Я испытываю стресс-тестирование Elastic Search, отправляя запросы, но боюсь, что ответы кэшируются. Как отключить кеширование при тестировании Elastic Search?
Как отключить кеширование при тестировании Elastic Search
Ответ 1
Прежде чем я отвечу, отказ от ответственности, который я согласен с комментариями по вопросу, отключение кэша не лучший способ стресс-теста Elasticsearch. Попадание в него одновременных запросов, представляющих ваш производственный набор запросов и активную индексацию в одно и то же время, будет гораздо лучшим способом увидеть, как ES реагирует при нагрузке.
Однако, чтобы ответить на ваш вопрос и указать некоторые предостережения:
Вы можете очистить кэш между запусками:
API очистки кеша позволяет очищать либо все кеши, либо определенные кэширование связано с одним или несколькими индексами.
https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-clearcache.html
Вы можете отключить кэш фильтра, установив index.cache.filter.type в none - это предотвратит результаты фильтрации из кэша:
http://elasticsearch-users.115913.n3.nabble.com/Disable-cache-td3825105.html
http://elasticsearch-users.115913.n3.nabble.com/Disabling-cache-td3201850.html
Вы можете изменить настройки для кэша данных поля - однако я не знаю, что произойдет, если вы установите это в ноль:
https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-fielddata.html
В целом, имейте в виду, что Elasticsearch делает значительным использование кеша файловой системы нативной ОС, поэтому большая часть "кеширования" происходит вне контроля ES:
https://blog.codecentric.de/en/2014/05/elasticsearch-indexing-performance-cheatsheet/
Ответ 2
GET/my_index/_search? Request_cache = falsehttps://www.elastic.co/guide/en/elasticsearch/reference/current/shard-request-cache.html