Transport已在ES 8中被删除;高级rest客户端被废弃并将被删除;在ES 8中使用了新的Java客户端。
但自2x以来,.Net拥有相同的高级Elasticsearch .NET客户机。为什么有这么多ES客户端?
发布于 2022-04-01 07:05:17
简而言之,有几个Java客户机是由于历史原因而出现的。
传输客户端使用Elasticsearch的传输协议,即节点之间进行通信的协议。如果客户端与集群的版本不同,则可能会出现兼容性问题。Java客户端是唯一使用传输协议的客户机,而其他每个客户端都使用http协议。
该高级Rest客户端(HLRC)取代传输客户端使用了http协议。这是朝着正确方向迈出的一步,然而,客户机仍然依赖于Elasticsearch中的类型。
新的Java客户端取代HLRC,成为与弹性搜索完全解耦。客户端的大部分API面是从API规范生成的,提供了一个更可维护和更一致的API面。
顺便说一句,虽然从1.x开始,.NET客户端(Elasticsearch.Net和NEST)就有了一致的Nuget包,但在这个时候,客户端经历了相当大的变化,主要版本之间发生了重大变化。8.x也有一个新的.NET (alpha版本) :)
https://stackoverflow.com/questions/71701666
复制相似问题