gpt4 book ai didi

elasticsearch - Spring Data Elasticsearch 自动重连

转载 作者:行者123 更新时间:2023-11-29 02:56:40 29 4
gpt4 key购买 nike

我有一个 Spring Boot 应用程序,我在其中使用 ElasticsearchTemplate 连接到我的 ElasticSearch。但是,当它工作并且我关闭 Elasticsearch 时,每次我使用 ElasticTemplate 方法时,我都会得到一个 org.elasticsearch.client.transport.NoNodeAvailableException。没关系,因为 ElasticSearch 不工作。

然而,当 ElasticSearch 恢复正常时,我仍然收到 org.elasticsearch.client.transport.NoNodeAvailableException 就好像这不是在尝试重新连接,但一旦失去连接,我需要重新启动我的整个应用程序。

如何解决?有没有办法让它在 ES 关闭后尝试重新连接到 ealsticSearch?

最佳答案

TransportClient 每 5 秒发送一次心跳信号以验证节点还活着,如果不活着就丢弃它。

启用嗅探后,客户端将连接到新发现的节点或再次出现的旧节点。

因此,将 TransportClient 设置中的“client.transport.sniff”属性设置为 true 应该会有所帮助。参见 https://www.elastic.co/guide/en/elasticsearch/client/java-api/6.5/transport-client.html

顺便说一句:考虑切换到 rest 客户端,因为使用传输客户端会阻止您升级到 future 的 elasticsearch 版本 (https://www.elastic.co/blog/state-of-the-official-elasticsearch-java-clients)

关于elasticsearch - Spring Data Elasticsearch 自动重连,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53413390/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com