我正在调试PHP应用程序的缓存层。它使用一组memcache服务器来缓存值。我想验证特定对象是否被正确清除。
我的想法是用telnet连接到正确的memcache服务器,如果密钥存在则手动检查。
我知道传递给Memcache::set
的密钥,但不知道连接到哪个服务器。我怎么知道数据存储在哪个memcache服务器上?
答案 0 :(得分:0)
如果它是集群而不是在实例中同步数据或者有一个集中的数据存储(内部实现 - 对您来说并不重要)。您将获得所有实例中的数据。
答案 1 :(得分:0)
我刚引用了文档。 Memcached客户端散列密钥以确定要查询的服务器。所以,我猜Memcached IS是分片的。您可能需要查看客户端(或可能是文档)的来源,以了解如何完成散列 - >>服务器。否则,您可以从命令行使用客户端来查询值。
答案 2 :(得分:0)
供将来参考:我编写了一个小python脚本,用于检查给定键https://gist.github.com/721965的memcache服务器列表