Elasticsearch 客戶端TransportClient vs RestClient


Elasticsearch(ES)有兩種連接方式:TransportClientRestClientTransportClient通過TCP方式訪問ES(只支持java),RestClient方式通過http API 訪問ES(沒有語言限制)。

Elasticsearch計划在Elasticsearch 7.0中棄用TransportClient,在8.0中完全刪除它。故在實際使用過程中建議您使用Java高級REST client。不管是transport client還是rest client都是線程安全的,都應該使用單例。

 

TransportClient:

TransportClient 是ElasticSearch(java)客戶端封裝對象,使用transport遠程連接到Elasticsearch集群,默認用的TCP端口是9300,該transport node並不會加入集群,而是簡單的向ElasticSearch集群上的節點發送請求。

Rest Client:

Java Low Level REST Client:elasticsearch client 低級別客戶端。它允許通過http請求與Elasticsearch集群進行通信。API本身不負責數據的編碼解碼,由用戶去編碼解碼。它與所有的ElasticSearch版本兼容。

Java High Level REST Client:Elasticsearch client官方高級客戶端。基於低級客戶端,它定義的API,已經對請求與響應數據包進行編碼解碼。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM