Как эффективно закрыть соединение JMS от Mule-3 - PullRequest
0 голосов
/ 12 октября 2018

Я использую разъем JMS в Mule для операций MQ.Я использую опцию прямого соединения JMS в моей кодовой базе и замечаю, что когда Мул отправляет сообщение в MQ, это соединение не закрывается.Также заметил, что если я публикую массовые сообщения, такие как 10K, то соединения устанавливаются более 500, но не закрываются автоматически.

Ниже приведен фрагмент кода -

<spring:beans>
    <spring:bean id="JmsFactory" name="JmsFactory" class="com.ibm.mq.jms.MQConnectionFactory">
        <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>
 </spring:beans>

<jms:connector name="jmsconnector" username="XXXX" password="XXXX" validateConnections="true" numberOfConsumers="1" persistentDelivery="true" specification="1.1" connectionFactory-ref="JmsFactory"/>

<jms:outbound-endpoint queue="SOURCE.IN" connector-ref="jmsconnector" />   

Кто-нибудь может подсказать, насколько эффективно мы можем закрыть соединение, как только Мул отправит сообщение в MQ.

1 Ответ

0 голосов
/ 22 ноября 2018

Вы можете установить useCacheSessions = false, чтобы закрыть соединение JMS после фиксации MQ.

<jms:connector name="jmsconnector" username="XXXX" password="XXXX" validateConnections="true" numberOfConsumers="1" persistentDelivery="true" specification="1.1" connectionFactory-ref="JmsFactory" cacheJmsSessions="false" />
...