10 Кэш значений
Обзор
Чтобы делать вычисления выражений триггеров, вычисляемых элементов данных и некоторых макросов намного быстрее, в Zabbix сервере поддерживается опция кэша значений.
Этот находящийся в оперативной памяти кэш используется для доступа к данным истории, вместо выполнения прямых SQL-запросов к базе данных. Если данные истории не присутствуют в кэше, недостающие значения запрашиваются из базы данных, и кэш обновляется соответственно.
Для включения функционала кэша значений поддерживается дополнительный параметр ValueCacheSize в файле конфигурации Zabbix сервера.
Значения элементов данных остаются в кэше значений до тех пор, пока:
- элемент данных удален (кешированные значения удаляются после следующей синхронизации конфигурации);
- значение элемента находится за пределами диапазона времени или количества, указанного в выражении триггера/вычисляемого элемента (кэшированное значение удаляется при получении нового значения);
- изменен диапазон времени или счетчика, указанный в выражении триггера/вычисляемого элемента, таким образом, чтобы для расчета требовалось меньше данных (ненужные кэшированные значения удаляются через 24 часа).
Статус кэша значений можно наблюдать с помощью опции сервера runtime controldiaginfo (или diaginfo=valuecache) и проверкой раздела на наличие диагностической информации о кэше значений.
Это может быть полезно для определения неправильно настроенных триггеров или вычисляемых элементов.
Для включения функциональности кэша значений в файле конфигурации сервера Zabbix поддерживается необязательный параметр ValueCacheSize.
Для мониторинга кэша значений поддерживаются два внутренних элемента данных: zabbix[vcache,buffer,<mode>] и zabbix[vcache,cache,<parameter>]. Подробнее см. в разделе внутренние элементы данных.