如何让 Bunny 使用 RabbitMQ 一次处理一条消息?

kid*_*tal 0 ruby rabbitmq bunny

当我使用 Bunny 时,当我使用以下命令打开到包含 50,000 条消息的队列的连接时:

queue = channel.queue('test.queue', :durable => true)
queue.subscribe(:manual_ack => true) do ...
Run Code Online (Sandbox Code Playgroud)

RabbitMQ 立即将所有消息从 移动READYUNACKED,从而不会在 中留下任何消息READY

如果我尝试使用相同的代码启动另一个兔子,它现在没有任何可读取的内容READY

我错过了一些明显的东西吗?

kid*_*tal 5

弄清楚了。我没设置pre_fetch