如何使用spring框架接收所有prefetch rabbitmq消息?

时间:2015-01-12 06:54:49

标签: java spring rabbitmq spring-jms

我正在学习如何使用SimpleMessageListenerContainer来接收rabbitmq消息。我的侦听器容器有prefetchCount = 1000.但是我的侦听器工作器实现了MessageListener接口,该接口一次只接收一条消息。是否有接收消息列表的接口?如果没有,我该如何接收消息列表?我不想一次处理一条消息,而是要列出它们,以便我可以批量插入/更新。我还要对所有传递给我的消息表示感谢。

谢谢,

Sean Nguyen

1 个答案:

答案 0 :(得分:0)

没有这样的API;即使是低级别的兔子客户端消费者也可以一次一个地传递每条预取的消息(通过handleDelivery)。

您必须自己将它们累积到一个列表中。

使用txSize属性(将其设置为与预取相同)在1000次交付后发送一个确认。