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