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

问题描述 投票:0回答:1

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

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

有人可能建议使用聚合器,但这违背了目的,因为我不想让一条消息在队列上包含 X 个较小的消息,但实际上我的队列上有 X 个消息..

谢谢!

spring spring-integration jms spring-jms
1个回答
0
投票

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

还值得注意的是,JMS 没有指定传输机制,并且由代理来选择传输。如果您使用的是 activemq,您可以尝试使用明线与 amqp 进行试验,看看是否获得所需的吞吐量。

© www.soinside.com 2019 - 2024. All rights reserved.