我在brpop命令中选择redis作为队列。像这样的python脚本:
while True:
try:
task = rdb.brpop("msg:queue")
print(task)
except Exception:
print("error")
其他应用会将一些消息推送到msg:queue
lpush
。我选择了supvervisor来运行脚本。当剧本运行几天时。
脚本仍在运行,app仍然将msg推送到队列中,但是,brpop不起作用,它会停止处理队列。
这个问题似乎是:blpop stops processing queue after a while。但我没有一些功能。
它可能是redis bug,还是我以正确的方式将redis用于队列?