为了不让我们的数据库服务器超载,我们正在尝试刷新每台服务器,它们之间有60秒的延迟。当给定延迟时,我在确定服务器实际何时被刷新时遇到了一些问题。
我使用BeITMemcached并调用FlushAll,延迟60秒,交错设置为true。
我尝试使用命令行远程登录主机端口,后跟统计信息来查看刷新延迟是否有效,但是,当我查看cmd_flush时,在没有延迟的情况下刷新所有主机/端口组合时,该值会立即上升。我尝试过stats、item和stats slabs,但找不到所有值所代表的信息,也找不到是否有任何东西表明它已经失效。
有没有其他地方可以让我确定服务器是什么时候被刷新的?或者,该值立即上升是否意味着延迟没有像预期的那样工作?
发布于 2021-02-06 00:05:21
我找到了一种方法来测试这个。即使cmd_flush会立即更新,实际的密钥也要等到延迟之后才会更新。
因此,我使用telnet连接到我想要监视的服务器/端口。然后使用gets查找设置了值的键。找到后,我在第一台服务器和这台服务器之间运行了一个延迟的flushall,并继续监视该键值。延迟结束后,键开始不返回值。
https://stackoverflow.com/questions/66032769
复制相似问题