当前位置: 首页 > 知识库问答 >
问题:

通过9300端口与9200端口的ElasticSearch API有什么区别?

梁丘烨
2023-03-14

我通过9200端口使用ElasticSearchRESTAPI。

官方Java库客户端连接到9300端口。

端口API之间的区别是什么?

我想将日志事件传递到ElasticSearch并查看批量API:

  • https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-docs-bulk.html
  • https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html

最让我烦恼的是,通过PreBuiltTransportClient的Java API带来了很多依赖项,如果将客户端插入应用程序,这些依赖项是完全不必要的开销(为什么我需要应用程序中的org.apache.lucenejars??)。

是否存在性能差异,它们是否提供相同级别的可靠性?

共有2个答案

慕晨
2023-03-14

如果您使用的是Java,则可以使用传输客户端使用二进制协议与端口9300上的Elasticsearch进行对话。现在不推荐使用传输客户端-无论如何都应该使用REST API,因为它具有更好的向后兼容性,并且没有显著的性能优势。

南门鸿哲
2023-03-14

这儿呢

java客户端为elastic创建了一个传输节点客户端,并通过传输模块连接到集群(不是完全功能节点),而不是在9200端口上整齐地工作。因此,它退回到端口9300,以连接到ES的传输层。

TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 9300))
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host2"), 9300));

弹性侦听端口9300上的所有传输请求,甚至其他节点。

 类似资料:
  • docker-compose.yml中的和选项之间有什么区别

  • 我刚刚在Windows XP上解压缩了ElasticSearch-0.90.2.zip,并启动了bin/ElasticSearch.bat。

  • 这些端口465和587都用于发送邮件(提交邮件),但它们之间的真正区别是什么?

  • 本文向大家介绍串行端口和并行端口之间的区别,包括了串行端口和并行端口之间的区别的使用技巧和注意事项,需要的朋友参考一下 串口 串行端口提供连接串行线路以准备串行通信的接口。串行端口通常用于调制解调器,鼠标,安全摄像机等。串行端口使用DB-9连接器,该9针D型连接器连接到传输线。串行端口使用一条线提供串行通信,因此不依赖于另一条线的速度,并且其长度可以根据需要进行扩展。 并行端口 并行端口提供了连接

  • 我尝试做的是:Processing 3通过我的网络摄像头接收一种二维码-- 问题是:Processing 3和Unity都使用相同的端口(COM4,9600)。这将导致Unity中出现IO异常,表示“访问被拒绝”,随后出现串行端口未打开的错误。 处理3代码 Arduino代码 统一代码 我们显然无法在Unity中打开端口,因为它已经被处理3使用。如何解决这个问题?通信流: 最终,Unity需要根据