【发布时间】:2020-01-06 17:16:44
【问题描述】:
我将 Redis 用作一个简单的 pubsub 代理,由 redis-py 库管理,仅使用默认的“主”通道。在 Redis 本身或包装 Python 库中是否有一种技术来计算此队列中的消息数量?我对 Redis 没有更深入的概念知识(尤其是它如何实现代理功能),所以不确定这样的问题是否有意义
不需要精确计数、避免锁等;我只需要定期(以分钟为单位)检查此队列是否为空
【问题讨论】:
我将 Redis 用作一个简单的 pubsub 代理,由 redis-py 库管理,仅使用默认的“主”通道。在 Redis 本身或包装 Python 库中是否有一种技术来计算此队列中的消息数量?我对 Redis 没有更深入的概念知识(尤其是它如何实现代理功能),所以不确定这样的问题是否有意义
不需要精确计数、避免锁等;我只需要定期(以分钟为单位)检查此队列是否为空
【问题讨论】:
Redis Pub/Sub 不保存任何内部消息队列,请参阅 - https://redis.io/topics/pubsub。
如果您需要更多基于队列的发布机制,您可以查看Redis Streams。 Redis Streams 提供了两种可能对您有所帮助的方法XLEN 和XINFO。
【讨论】: