我制作了一个用于更新许多客户端的脚本。该脚本应该能够在多个实例中运行。
首先,Redis将检索所有客户的ID。然后,脚本的每个实例都将RPOPLPUSH所有客户端(更新客户端并放在列表的后面)。
该脚本应该能够检测新客户端是否已注册(查询到数据库)并且需要将其ID放入列表/集合中。因此,我需要将该集合设为唯一,无重复ID 。
排序集似乎是这里的解决方案,但它没有RPOPLPUSH功能。我有什么选择?
答案 0 :(得分:0)
使用排序集,但使用简单的Redis服务器端Lua脚本(EVAL
)实现您自己的请求命令变体。
排序集始终按分数排序(如果分数相同,则按元素按字典顺序排序)。从问题中你不清楚"弹出"从(最高?最低?)和你要去的地方,但你知道你的要求,你可能最了解:)