批处理消息
批处理消息(由生产者创建)由侦听器容器(使用 springBatchFormat
消息头)自动进行解批处理。
拒绝批处理中的任何消息都会导致整个批处理被拒绝。
有关批处理的更多信息,请参阅 批处理。
从 2.2 版本开始,SimpleMessageListenerContainer
可用于在消费者端创建批处理(其中生产者发送离散消息)。
设置容器属性 consumerBatchEnabled
以启用此功能。
deBatchingEnabled
也必须为 true,以便容器负责处理两种类型的批处理。
当 consumerBatchEnabled
为 true 时,实现 BatchMessageListener
或 ChannelAwareBatchMessageListener
。
从 2.2.7 版本开始,SimpleMessageListenerContainer
和 DirectMessageListenerContainer
都可以将 生产者创建的批处理 解批为 List<Message>
。
有关在 @RabbitListener
中使用此功能的信息,请参阅 @RabbitListener 与批处理。