memcache telnet flush_all不删除所有项目

时间:2017-08-17 12:52:55

标签: macos memcached

我是使用memcache的新手,所以我可能会遗漏一些明显的东西。我使用telnet连接到memcache,然后尝试flush_all并获得消息'OK'。然后我运行'stats items'并查看项目列表。当我运行'stats cachedump 16 100'时,我仍然会看到列出的项目。如果我杀了memcache服务器并让它自己重启(实际上是试图调试如何在memcache失败时处理错误),我可以得到我想要的地方但是它只是擦除就好像它重新启动一样感谢使用PID来杀死

1 个答案:

答案 0 :(得分:3)

你不需要杀死这个过程。

当您执行flush_all时,Memcache不会释放内存。它只是将memcache中所有对象的到期时间设置为当前时间。当你获得一个键时,它将返回null并且该对象将被清除。它使用惰性方法来刷新所有对象。

您可以阅读维基here。转到页面末尾。