zoukankan      html  css  js  c++  java
  • 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设置了默认调优参数,若版本匹配,其性能会更加优秀。

  • 相关阅读:
    [12.19模拟赛]矩形|扫描线+set
    网 络
    数组(二维)
    数组
    02-线程的三种创建方式
    01-线程(概念篇)
    IO流-文件操作
    Serializable 可串行化接口
    PrintStream 类
    ObjectIntputStream / ObjectOutputStream 类
  • 原文地址:https://www.cnblogs.com/pass-ion/p/14620644.html
Copyright © 2011-2022 走看看