Соединения JMS исчерпаны с использованием WebSphere MQ
Я настроилCachingConnectionFactory
это оборачиваетMQTopicConnectionFactory
а такжеMQQueueConnectionFactory
с размером кэша, равным 10 каждый.
Они используются в несколькихjms:outbound-channel-adapter or jms:message-driven-channel-adapter
как часть различных рабочих процессов весенней интеграции, которые есть в моем приложении.
Замечено, что время от времени счетчик соединений на канале MQ достигает максимально допустимого значения (около 1000), когда процесс перестает функционировать. Это серьезная проблема для производственного применения.
Снятие приложения не уменьшает количество соединений, поэтому выглядит как потерянные соединения на стороне MQ? Я не уверен, что если в моей весенней конфигурации jms / SI отсутствует что-то, что может решить эту проблему, любая помощь будет принята с благодарностью.
Также я хотел бы регистрировать открытое и закрытое соединение из приложения, но не вижу способа сделать это.
<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
Спасибо