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