Spring Cloud Stream并批量发送消息以排队

时间:2019-02-20 03:35:36

标签: spring-boot spring-integration spring-cloud-stream

我正在这样向我的消息队列发送消息

 messages.forEach(message->
    sources.output().send(MessageBuilder.withPayload(message).build());

这些消息来自外部来源,可能有成千上万条。 我已经看过拆分器,但是它需要一个输入通道和输出通道,但是我的消息是第一次进入队列,我只是在生成不消耗它们的消息,并且不确定聚合器将如何工作或如果对于这样一个简单的场景来说太复杂了。

所以基本上,我希望能够批量发送这些消息,而不是一一发送。 怎么能做到?

1 个答案:

答案 0 :(得分:0)

对于简单的事情,您可以收集并创建List数据(消息或仅是有效载荷),然后创建一个以List为有效载荷的消息并发送。

对于更可配置的方法,您还可以使用Spring Integration Aggregator