我想基本上像这样使用 Redis,如果它(假设地)接受 SQL:
SELECT id, data, processing_due FROM qtable WHERE processing_due < NOW()
其中processing_due
是某种整数时间戳。
然后的想法是也删除已完成的“工作”,例如:
DELETE from qtable WHERE id = $someid
我将在生产(“插入”)和消费(“选择,删除”)端使用哪些 Redis 命令?
我发现 Redis 可以用作队列,但我不希望答案严格按照插入的顺序,而是基于 if "now" is past processing_due
。
我想这与排行榜的问题几乎相同?
(我试图了解 Redis 的工作原理,从文档中它看起来很简单,但我就是不明白。)
一个体面的解决方案是做ZADD qtable <timestamp> <UUID>
然后使用 UUID 作为键来存储 (json) 值吗?