如何获得node.js中的所有memcached数据?

首先,我的目的是当用户closures浏览器,然后用户会话数据应该过期。 现在的问题是,我的服务器需要memcached正常工作。 所以,我想从已closures浏览器的memcached中删除特定的用户会话。 我不想清除所有memcached,以便其余用户的会话应该仍然存在。

在Memcached中,没有办法列出特定命名空间中的所有密钥,除非您想使用一些解决方法 ,并且我不build议您在生产中使用。

另一种方法是将所有与用户相关的Memcached密钥存储在一个集合中(也存储在memcached中)。 设置密钥是使用用户标识生成的,所以您总是提前知道它的值,并且您可以轻松地检索它。

一旦用户会话结束,您可以获取包含用户密钥列表的项目,然后删除每个密钥。 请记住,包含键列表的键应具有比任何项目特定的项目更大的到期时间。

还值得一提的是, Redis默认支持按键迭代和设置,您可以将其configuration为像Memcached一样工作。 你可能想尝试一下。