首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点& Redis队列

节点& Redis队列
EN

Stack Overflow用户
提问于 2013-10-11 23:45:23
回答 1查看 961关注 0票数 0

我正在尝试使用Redis创建一个JSON对象队列。

我目前使用ZADD来创建一个有序集:

代码语言:javascript
复制
var entry = {"name": "Hank", "question": "Where am I?"};
client.zadd("entries", 1, JSON.stringify(entry));

每次有新条目时,我如何增加分数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-12 02:17:51

如果您试图创建一个队列,其中新项被添加到队列的顶部,那么您可能根本不需要一个排序集。

如果你有一个有着不同分数的东西的列表,比如视频游戏的排行榜,或者最适合居住的地方的排名,那么分类集是非常有用的。如果您在询问如何增加现有条目的分数,这很容易,只需将其与新的分数一起添加即可。因此,client.zadd("entries", 2, JSON.stringify(entry));会将分数更新为2。从redis.io

将所有具有指定分数的指定成员添加到存储在键处的排序集中。如果指定的成员已经是排序集的成员,则将更新得分,并将元素重新插入到正确的位置,以确保排序正确。

听起来好像你在问,当你向集合中添加一个新项目时,如何增加所有现有项目的得分。这就像“推”每一个现有的项目在一个地方,并把新的一个在顶部。这不是排序集的意义,也是红色列表的确切含义。而且,推正是你会做的事。使用LPUSH在列表中添加元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19328875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档