Проблема при запуске нескольких поисковых запросов вasticsearch

1

Я скопировал 20 индекс из экземпляра elasticsearch в новый экземпляр. После этого, когда я начал запускать поисковые запросы в новом экземпляре из моего кода, после 20-30 звонков я получаю ошибку:

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

Как решить проблему?

Теги:
exception
search
elasticsearch

1 ответ

2

Эта ошибка обычно возникает, когда кластер elasticsearch не может идти в ногу с поисковым трафиком. Это в основном механизм внутренней защиты, который экономит elasticsearch от перегрузки. Когда эта ошибка возвращается, приложение, работающее с надлежащим поведением, должно временно прекратить выполнение поисков и дождаться восстановления экземпляра elasticsearch. Если эта ситуация возникает слишком часто, может потребоваться увеличение емкости кластера путем добавления большего количества узлов.

Если проблема вызвана короткими шипами в клиентском трафике, вы также можете устранить проблему, увеличив размер очереди пула потоков:

threadpool.search.queue_size: 2000

Это можно сделать в файле elasticsearch.yml или динамически. Однако это решение не будет работать с устойчивым интенсивным трафиком, превышающим емкость кластера.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню