Spring Integration JMS出站适配器事务控制

时间:2011-08-15 14:08:48

标签: spring jms activemq spring-integration spring-jms

为了在启用事务的情况下使用jms实现消息的高性能生成,需要控制每个事务上发送的消息量,数字越大,性能越高,

是否可以使用spring集成以这种方式控制事务?

有人可能会建议使用聚合器,但是这会破坏目的,因为我不希望队列中有一条包含X个较小消息的消息,但实际上我的队列中有X条消息..

谢谢!

1 个答案:

答案 0 :(得分:0)

我不知道你的设置,但我会在源上提升并发消费者,而不是尝试调整出站适配器。这个数据量中有哪些数据源?根据我的经验,通常生产者落后于出版商 - 除非两者都是JMS /消息资源 - 就像桥梁一样。在这种情况下,您通常会通过提升并发消费者来看到显着的改进,因为您专门用n个线程接收消息并并行处理它们,并且每个线程将在其自己的“事务环境”中运行。

值得注意的是,JMS确实指定传输机制,并且它向代理选择传输。如果您使用的是activemq,可以尝试使用open wire vs amqp进行试验,看看是否获得了所需的吞吐量。