Jms 骆驼太慢了

Jms 骆驼太慢了,jms,ibm-mq,mq,Jms,Ibm Mq,Mq,我正在使用camel2.14(core、jms和spring)为jms端点设置路由。JMS提供程序是IBM MQ(版本7.0.1.4) 当使用不带选择器的事务时,读取和记录一行(无处理)每条消息大约需要300毫秒 当不使用事务时,读取和记录第9行(无处理)每条消息大约需要20毫秒 我需要使用事务,没有选择。但是它太慢了 大部分时间都被事务管理器占用(创建和关闭jms会话和连接)。我已经将缓存级别设置为cache_CONSUMER,没有任何区别(至少不显著,可能是10毫秒) 我试图找到IBM MQ

我正在使用camel2.14(core、jms和spring)为jms端点设置路由。JMS提供程序是IBM MQ(版本7.0.1.4)

当使用不带选择器的事务时,读取和记录一行(无处理)每条消息大约需要300毫秒

当不使用事务时,读取和记录第9行(无处理)每条消息大约需要20毫秒

我需要使用事务,没有选择。但是它太慢了

大部分时间都被事务管理器占用(创建和关闭jms会话和连接)。我已经将缓存级别设置为cache_CONSUMER,没有任何区别(至少不显著,可能是10毫秒)

我试图找到IBM MQ是否提供会话/连接池,如何配置?感谢您的帮助


TIA。

您是否为每条消息创建会话和使用者?您可以使用spring缓存连接工厂来解决这个问题。IBM不提供JMS连接池(因为这些连接池是由应用服务器有效管理的)。不是我,是camel在做这件事。我正在使用缓存连接工厂,但仍然为每条消息创建了一个新的会话和连接。我的消费是事务性的,因此创建一个新会话是有意义的。但是,如果我可以配置会话/连接池,它将减少创建会话和连接所花费的时间。很难(到目前为止不可能)找到任何与camel+IBMMQ组合相关的文档。这不是答案,而是关于以下主题的一些有价值阅读的链接:您是否为每条消息创建会话和消费者?您可以使用spring缓存连接工厂来解决这个问题。IBM不提供JMS连接池(因为这些连接池是由应用服务器有效管理的)。不是我,是camel在做这件事。我正在使用缓存连接工厂,但仍然为每条消息创建了一个新的会话和连接。我的消费是事务性的,因此创建一个新会话是有意义的。但是,如果我可以配置会话/连接池,它将减少创建会话和连接所花费的时间。很难(到目前为止不可能)找到有关camel+IBMMQ组合的任何相关文档。这不是答案,而是有关该主题的一些有价值阅读的链接: