- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在文档中找不到此信息:Does Redis guarantee that an element is returned with ZSCAN command under this condition:
The element was contained in the sorted set from the start to the end of a full iteration, BUT the score of such element has changed (even several times, for instance by another client) during iteration?
我找到的唯一相关声明如下:
Elements that were not constantly present in the collection during a full iteration, may be returned or not: it is undefined.
但我不知道在这种情况下分数变化是否与删除/添加操作相同。
最佳答案
如果元素在整个迭代过程中存在,它将通过 zscan
命令返回。在迭代过程中分数是否发生变化无关紧要。
通常,zset
被实现为一个哈希表(即 Redis 的 dict
)和一个 skiplist。运行 zscan
命令时,它会遍历哈希表条目以执行扫描作业。分数(字典条目的值)的变化不会影响迭代过程。
如果 zset
足够小,Redis 会将其实现为 ziplist
。在这种情况下,Redis 在单个 zscan
调用中返回所有元素。因此在迭代期间不能更改分数。
一句话,你有保障。
关于redis - ZSCAN 保证在迭代过程中得分发生变化的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39573739/
我在文档中找不到此信息:Does Redis guarantee that an element is returned with ZSCAN command under this condition
根据这个https://github.com/NodeRedis/node_redis/issues/896 我有 zset ,我正在将 token (元素)保存到相应的时间戳(分数) 现在我想使用
我在 PHP redis 上有这段代码:( https://github.com/phpredis/phpredis ) $count = 10; $it = null; $redis->setOpt
我正在编写一个在 Redis 中执行的 Lua 脚本。我正在使用如下所示的排序集: 成员(member):96954_1_1557705600 分数:1557705600 分数是一个 unix 纪元时
对于我正在处理的应用程序,我正在考虑使用 Redis 中的排序集来存储项目,其中时间戳作为分数,任意消息作为成员。然后我计划使用 zscan 来按顺序从排序集中检索项目。顺序对应用程序很重要,这就是我
zscan 无法在 redis 服务器上工作。它在 Redis 客户端上工作。 Code: $redis = Redis.new(:host => 'localhost', :port =>
我正在使用 stackexchange.redis。因为 zscan 给出了所有匹配的值 我想得到准确给定的页面大小结果和剩余值的下一个光标。 I have debugged its source c
我想在 node.js 中使用“ZSCAN”命令来访问 redis 以获得结果。我通过了 node-redis-streamify 以及其他相同的 Node 模块包,但我无法执行此命令。如果我可以使用
我是一名优秀的程序员,十分优秀!