【发布时间】:2019-02-03 09:43:54
【问题描述】:
我正在通过 JMS 从 Mule 连接 MQ-8.x,最近我遇到了一个问题,似乎 MQ 写入操作超出了同步点范围,因此以及巨大的入站负载,MQ 进入死锁状态。
<spring:bean id="ConnectionFactory" class="com.ibm.mq.jms.MQConnectionFactory" name="ConnectionFactory">
<spring:property name="hostName" value="xxxx" />
<spring:property name="port" value="xxxx"/>
<spring:property name="queueManager" value="xxxx"/>
<spring:property name="transportType" value="1"/>
<spring:property name="channel" value="xxxx"/>
</spring:bean>
<jms:connector name="JmsConsumer" username="xxxx" password="xxxx" specification="1.1" connectionFactory-ref="ConnectionFactory" numberOfConsumers="1" validateConnections="true" persistentDelivery="true" doc:name="JMS"/>
<jms:outbound-endpoint queue="xxxx" connector-ref="JmsConsumer" doc:name="Audits"/>
我的操作量将被移动,但它只是一个 PUT 操作,所以我真的不确定是否需要 XA 或其他事务管理器。
【问题讨论】:
-
听起来你的 jms:connector 没有提交事务?也许您应该尝试 transactionalAction="ALWAYS_JOIN" ?
标签: jms mule ibm-mq xa mule-esb