ElasticSearch:Transport Client 对比 Node Client

Transport Client 对比 Node Client

如果使用Java,您可能想知道何时使用Transport Client与Node Client。如本书开头所讨论的,Transport Client充当集群和应用程序之间的通信层。它知道API,并可以自动在节点之间循环,为您侦听群集等等。但它是集群外部的,类似于REST客户端。

另一方面,Node Client实际上是集群中的一个节点(但不持有数据,不能成为主节点)。因为它是一个节点,它知道整个群集状态(所有节点驻留在哪里,哪些碎片在哪些节点中生效,等等)。这意味着它可以执行少一个网络跳的API。

有两个客户端的用例:

  • 如果要将应用程序与集群解耦,Transport Client是理想的。例如,如果应用程序快速创建和销毁与集群的连接,则Transport Client比Node Client“轻”,因为它不是集群的一部分。

    同样,如果您需要创建数千个连接,则不希望有数千个Node Client加入群集。 Transport Client将是一个更好的选择。

  • 另一方面,如果你只需要几个长期的,持久的连接对象到集群,一个Node Client可以更高效一点,因为它知道集群布局。但它将您的应用程序绑定到集群中,因此从防火墙的角度可能会出现问题。

原文地址

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值