区间为 5s ,00:00 的 hit 与 miss 值与 00:05 的值都相等,也就是说 5s 里 redis 都没有 qps 。那此时的命中率应该是多少呢?
-----
在阿里云上,从 Redis 开源版 4.0 升级至 5.0 后,命中率监控持续报警说命中率只有 40%左右。通过 info 查看,自己按照 `命中率=Key 命中数÷( Key 命中数+Key 未命中数)`计算,命中率应该在 90%以上,遂提交工单询问监控命中率计算问题。经过 3 个半小时的内部讨论给了如下回复(忽略标题内容)。
阿里云命中率指标的获取最小周期是 5s ,也就是 5s 内都没有 QPS 的时候,这 5s 的命中率就为 0 (以前为 100%)。除非每秒都有 QPS ,那在阿里云云监控中,那刻的命中率才会显示为 100%。下图就是为 0 的情况。
越看这个逻辑越别扭。像上图这种正常情况下,命中率指标能覆盖 0%-100%,这还咋设置监控呢。
我们业务无法保障每秒都有 qps ,按照现在的算法,1 分钟的区间,晚上的命中率能到 10%,白天可能到 80%,监控命中率完全无法设置阈值,如果设置过低,白天的 key miss 可能就无法触发报警,设置略高,晚上报警不断。。。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://ex.noerr.eu.org/t/1165049
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.