10 值缓存

概览

为了更快地计算触发器表达式、计算或聚合类型监控项和一些宏。Zabbix Server支持值缓存选项。

这个内存缓存,可以用于访问历史数据,而不需要对数据库直接执行SQL调用。如果请求的历史值不在缓存中,则会从数据库请求缺失的数据,并相应地更新缓存。

监控项的值会保留在值缓存中,直到以下情况发生:

  • 监控项被删除(缓存值在下次配置同步后被删除);
  • 监控项的值超出了触发器/计算项表达式指定的时间或计数范围(当接收到新值时,缓存值被移除);
  • 触发器/计算项表达式指定的时间或计数范围被更改,以减少计算所需的数据量(不必要的缓存值在24小时后被移除)。

可以使用服务器运行时控制 选项 diaginfo (or diaginfo=valuecache) 来观察值缓存的状态,并检查值缓存诊断信息的部分。这可以帮助确定配置不当的触发器或计算项。

要启用值缓存功能,Zabbix server配置文件支持一个可选的ValueCacheSize参数。配置

支持两个内部监控项用于监视值缓存: zabbix[vcache,buffer,<mode>] and zabbix[vcache,cache,<parameter>]。更多细节请查看 内部监控项