首页 > 解决方案 > 延迟监控 memcached 刷新

问题描述

为了不使我们的数据库服务器超载,我们尝试以 60 秒的延迟刷新每个服务器。当给出延迟时,我在确定服务器何时实际刷新时遇到了一些问题。

我正在使用 BeITMemcached 并以 60 秒的延迟调用 FlushAll 并将交错设置为 true。

我尝试使用命令行 telnet 主机端口,然后使用 stats 来查看刷新延迟是否有效,但是当我查看 cmd_flush 时,所有主机/端口组合的值都会立即上升,而不会延迟刷新。我已经尝试过 stats items 和 stats slabs,但找不到关于所有值代表什么以及是否有任何东西表明它已失效的信息。

是否有其他地方可以确定服务器实际刷新的时间?或者该值立即上升是否意味着延迟没有按预期工作?

标签: memcached

解决方案


我找到了一个关于测试这个的方法。即使 cmd_flush 立即更新,实际密钥也要等到延迟之后才会更新。

所以我用 telnet 连接到我想监控的服务器/端口。然后使用gets key 来查找具有值集的键。找到后,我在第一台服务器和这台服务器之间延迟运行 flushall,并继续监视该键值。延迟结束后,密钥开始不返回任何值。


推荐阅读