我想用ID保存过去时间相对于当前时间的数据。
示例:
Last Id: (None)
Current Time: 1904878793327
跑步:
xadd test 1804878793327-1 test 123
会抛出错误,
ERR The ID specified in XADD is equal or smaller than the target stream top item
即使插入的条目没有,我也无法插入时间戳相对于当前时间更早的新条目。
知道如何实现这一目标吗?
这与时间戳无关。
创建 Steam 后,您可以使用任何您喜欢的 id:
redis> DEL test
(integer) 0
redis> XADD test 2-2 a b
"2-2"
redis> XREAD STREAMS test 0-0
1) 1) "test"
2) 1) 1) "2-2"
2) 1) "a"
2) "b"
redis> XDEL test 2-2
(integer) 1
但是,无法添加 id 低于或等于最后一个 id 的其他项目,即使该项目已从流中删除:
redis> XADD test 1-1 c d
(error) ERR The ID specified in XADD is equal or smaller than the target stream top item
可以看到内部保存了最后一个id:
redis> XINFO STREAM test
1) "length"
2) (integer) 0
...
7) "last-generated-id"
8) "2-2"
...