ES elasticSearch几种客户端


ES目前有4种客户端:Jest client、Rest client、Transport client、Node client

Transport client、Node client都是通过9300端口,使用 Elasticsearch 的原生 传输 协议和集群交互。(集群交互的端口都是通过9300)

Transport client是不需要单独一个节点,脱离在集群之外。

Node client需要单独建立一个节点,连接该节点进行操作,该节点不能存储数据,也不能成为主节点。

Transport client(7.0弃用)

Node client(2.3弃用)

 

Jest:第三方客户端

使用广泛

ES集群使用不同的ES版本,使用原生ES API会有问题,而Jest不会;

<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
<version>5.3.3</version>
</dependency>

 

ES提供了两个JAVA REST client 版本

Java Low Level REST Client: 低级别的REST客户端,通过http与集群交互,用户需自己编组请求JSON串,及解析响应JSON串。兼容所有ES版本
Java High Level REST Client: 高级别的REST客户端,基于低级别的REST客户端,增加了编组请求JSON串、解析响应JSON串等相关api。使用的版本需要保持和ES服务端的版本一致,否则会有版本问题。

<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>6.4.0</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>6.4.0</version>
</dependency>

JestClient兼容性优于其他两者,Java High Level REST Client设置了默认调优参数,若版本匹配,其性能会更加优秀。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM