有一个 queue ,20+个 consumer ,只有 3 ,4 个能收到消息,剩下的就是保持 idle 状态, 队列里消息明明上万条,channel.basic_consume
和 channel.consume
方法都试过,没有任何错误,有人遇到过这种情况吗?
客户端用 pika, queue 的设置是
queue_args = {
"x-max-priority": 11,
"x-max-length-bytes": 1000000000,
"x-overflow": "reject-publish"
}
channel.queue_declare(queue=name,
durable=True,
arguments=queue_args)
没有设置 prefetch
, 那些 idle 的 process 检查 queue_declare
返回结果里的 queue 里的消息数量也是 0 ,就很奇怪,有人遇到过类似的情况吗?