Увеличение размера очереди в Elasticsearch?
Я смотрел на мои журналы elasticsearch, и я наткнулся на ошибку
rejected execution (queue capacity 1000) on org.elasticsearch.search.action.SearchServiceTransportAction@6d32fa18
после поиска ошибки, общий и консенсус должен был увеличить размер очереди, как говорилось здесь - https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-threadpool.html
вопрос в том, как мне это сделать на самом деле? Есть ли файл aconfiguration где-то, что мне не хватает?
2 ответов
изменить размер очереди можно добавить в файл config для каждого из узлов следующим образом:
threadpool.search.queue_size: <new queue size>
.
однако это также потребует перезапуска кластера.
до Elasticsearch 2.X, вы можете обновить через API настройки кластера и это не потребует перезапуска кластера, однако эта опция исчезла с Elasticsearch 5.X и новее.
curl -XPUT _cluster/settings -d '{
"persistent" : {
"threadpool.search.queue_size" : <new_size>
}
}'
вы можете запросить размер очереди следует:
curl <server>/_cat/thread_pool?v&h=search.queueSize
начиная с Elasticsearch 5 вы не можете использовать API для обновления размера очереди поиска threadpool. Теперь это настройки уровня узла. См.этой.
настройки пула потоков теперь являются настройками уровня узла. Таким образом, невозможно обновить параметры пула потоков с помощью API параметров кластера.
чтобы обновить threadpool, вы должны добавить thread_pool.search.queue_size : <New size>
на elasticsearch.в формате YML файл каждого узла, а затем перезапустить решение Elasticsearch.