javascript - 如何在 node.js 中获取所有 memcached 数据?

标签 javascript node.js memcached express

首先,我的目的是当用户关闭浏览器时用户 session 数据应该过期。现在的问题是,我的服务器需要 memcached 才能正常工作。因此,我想从已关闭浏览器的 memcached 中删除该特定用户 session 。我不想清除所有 memcached,以便剩余用户的 session 仍然存在。

最佳答案

在 Memcached 中,除非您想使用 some workarounds,否则无法列出特定命名空间中的所有键。 ,我不建议您在生产环境中使用。

一种替代方法是将所有与用户相关的 Memcached 键存储在一个集合中(也存储在 memcached 中)。设置 key 是使用用户 ID 生成的,因此您始终可以提前知道它的值,并且可以轻松检索它。

用户 session 结束后,您可以获取包含用户 key 列表的项目,然后删除每个 key 。请记住,包含 key 列表的 key 的到期时间应大于任何特定于项目的项目。

还值得一提的是Redis默认支持键迭代和集合,你可以配置它像 Memcached 一样工作。您可能想尝试一下。

关于javascript - 如何在 node.js 中获取所有 memcached 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12956669/

相关文章:

javascript - 如何检查不存在的类? (按类名获取元素)

javascript - Node.js 集群没有改进。一些博客声称的每秒交易数

java - spring-boot-devtools 在从缓存获取时导致 ClassCastException。

ruby-on-rails - 用于 Rails 的 Phusion Passenger 应用程序预加载器

javascript - 如何使用函数调用代替循环跳转?

javascript - JS识别var是String

部署时未定义 Javascript 公共(public)命名空间函数

javascript - 允许 sequelize 外键的空值?

node.js - Node 检查器重复错误

session - Rails 4 使用 memcached 作为使用 dalli 的 session 存储