Conexões JMS esgotadas usando o WebSphere MQ
Eu configureiCachingConnectionFactory
que envolve umMQTopicConnectionFactory
eMQQueueConnectionFactory
com tamanho de cache definido como 10 cada.
Estes são usados em váriosjms:outbound-channel-adapter or jms:message-driven-channel-adapter
como parte de vários fluxos de trabalho de integração de primavera que tenho no meu aplicativo.
Percebe-se que, de vez em quando, a contagem de conexões no canal MQ atinge o máximo permitido (cerca de 1000) quando o processo para de funcionar. Esse é um problema sério para um aplicativo de produção.
Desativar o aplicativo não reduz a contagem de conexões, portanto parece conexões órfãs no lado do MQ? Não tenho certeza se estou faltando alguma coisa na minha configuração jms / SI da primavera que possa resolver esse problema, qualquer ajuda seria muito apreciada.
Também gostaria de registrar a conexão aberta e fechada do aplicativo, mas não vejo uma maneira de fazer isso.
<bean id="mqQcf" class="com.ibm.mq.jms.MQQueueConnectionFactory">
//all that it needs host/port/ queue manager /channel
</bean>
<bean id="qcf" class="org.springframework.jms.connection.CachingConnectionFactory">
<property name="targetConnectionFactory" ref=" mqQcf "/>
<property name="sessionCacheSize" value="10"/>
</bean>
<bean id="mqTcf" class="com.ibm.mq.jms.MQTopicConnectionFactory">
//all that it needs host/port/ queue manager /channel
</bean>
<bean id="tcf" class="org.springframework.jms.connection.CachingConnectionFactory">
<property name="targetConnectionFactory" ref=" mqTcf "/>
<property name="sessionCacheSize" value="10"/>
</bean>
//Qcf and tcf are than used in spring integration configuration as required
obrigado