在我的网站上,允许用户使用相同的用户名。此外,当用户登录时,我会在 Redis 键中暂时保存他们的用户名,并设置
问题是:有没有办法 - 使用 Redis - 找到在过去 10 分钟内在线且共享相同用户名的所有用户 ID?
目前,我正在使用 Python 提取所有键的值并查找冲突 - 这并没有真正帮助我,因为我需要在运行时多次执行此操作(而且有很多用户流量)。
我假设我可以创建以唯一用户名为键的集合,并将所有用户 ID 存储在集合中,从而使我能够 O(1) 查找共享相同用户名的用户。但是,我将不得不牺牲 10 分钟 ttl 条件(这对我每个用户名都是必需的)。
顺便说一句,我是 Redis/Lua 初学者,因此是初级问题(如果是的话)。
ttl
为10分钟。问题是:有没有办法 - 使用 Redis - 找到在过去 10 分钟内在线且共享相同用户名的所有用户 ID?
目前,我正在使用 Python 提取所有键的值并查找冲突 - 这并没有真正帮助我,因为我需要在运行时多次执行此操作(而且有很多用户流量)。
我假设我可以创建以唯一用户名为键的集合,并将所有用户 ID 存储在集合中,从而使我能够 O(1) 查找共享相同用户名的用户。但是,我将不得不牺牲 10 分钟 ttl 条件(这对我每个用户名都是必需的)。
顺便说一句,我是 Redis/Lua 初学者,因此是初级问题(如果是的话)。
usernames.lua
文件,然后在Python中调用它。我应该使用https://labix.org/lunatic-python,还是可以像典型的py文件一样导入lua文件作为模块? - Hassan Baig