Кэш результатов
Как повторные поиски отдаются из кэша, как кэш сбрасывается при каждой записи и как настроить cacheTtl.
Два слоя: кэш результатов в Redis (ключ = организация + индекс + ревизия + хэш
нормализованного запроса) и кэш движка (use_cache, cache_ttl). Оба используют
cacheTtl индекса.
Свежесть. Любая запись увеличивает ревизию индекса: документы, настройки, схема, профили, правила, синонимы, курирование, пресеты, стемминг, переключение алиаса. Старые записи кэша сразу становятся недостижимы.
Не кэшируются: запросы с ACL-принципалами, с session_id (персонализация),
explain=true, индексы с cacheTtl: 0, ответы с пропущенным реранкером.
Биллинг. Ответ из кэша — оплачиваемый поиск: квота резервируется и списывается, запрос логируется.
Настройка: Индекс → Настройки поиска → Cache TTL
(settings.search.cacheTtl, секунды): по умолчанию 60, 0 — выключено, максимум
86400.
Доля попаданий — в аналитике консоли; оператору — aacsearch_cache_events_total
в Prometheus-формате /metrics.