Мы используем контейнер слушателя пружины со следующей конфигурацией.
Хотя мы установили параллелизм 15, мы заметили, что сообщения не сразу передаются ожидающим потокам, как только они заканчивают обработку предыдущего запроса.
Несмотря на то, что существует огромное количество сообщений по этой теме - и потоки обработки простаивают и доступны, сообщения, похоже, передаются ожидающим потокам после небольшой задержки - и, по-видимому, партиями, а не непрерывным постоянным потоком.
Что может быть причиной такого поведения?
<jms:listener-container concurrency="15"
acknowledge="auto" destination-resolver="appDestinationResolver"
destination-type="queue" error-handler="jmsErrorHandler"
connection-factory="appCachingConnectionFactory">
<jms:listener
selector="${xxxx}='${xxxxvalue}' AND ${xxxxkey2}='${xxxxvalue2}'"
destination="${app.jms.queue.in}" ref="appMsgListener" method="handleappResponse"
id="app_Listener" />
</jms:listener-container>