gpt4 book ai didi

java - 在elasticsearch中触发多个搜索请求的问题

转载 作者:行者123 更新时间:2023-11-30 03:30:16 24 4
gpt4 key购买 nike

我已将 20 个索引从 elasticsearch 实例复制到新实例。之后,当我开始从我的代码在新实例中触发搜索查询时,经过 20-30 次调用后,我收到错误:

{[aRGdCWK2QsyfvgGJLt6xrA][quanteye_ing][1]: EsRejectedExecutionException[rejected execution (queue capacity 1000) 
on org.elasticsearch.search.action.SearchServiceTransportAction$23@29fdcd0e]}

如何解决这个问题?

最佳答案

当 Elasticsearch 集群无法跟上搜索流量时,通常会发生此错误。这基本上是一种内部保护机制,可以防止 Elasticsearch 过载。当返回此错误时,行为正常的客户端应用程序应暂时停止执行搜索并等待 elasticsearch 实例恢复。如果这种情况经常发生,则可能需要通过添加更多节点来增加集群的容量。

如果问题是由客户端流量的短暂峰值引起的,您还可以通过增加线程池队列大小来缓解该问题:

threadpool.search.queue_size:2000

这可以在 elasticsearch.yml 文件中或动态完成。但是,此解决方案不适用于超过集群容量的持续大流量。

关于java - 在elasticsearch中触发多个搜索请求的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29206552/

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