Почему DefaultMessageListenerContainer не должен использовать CachingConnectionFactory?

Я читал весеннюю документацию по DefaultMessageListenerContainer

В нем говорится: «Не используйте Spring CachingConnectionFactory Spring в сочетании с динамическим масштабированием. В идеале не используйте его вообще с контейнером прослушивателя сообщений, так как обычно предпочтительно, чтобы сам контейнер-слушатель обрабатывал соответствующее кэширование в течение своего жизненного цикла. Кроме того, остановка и перезапуск контейнера-слушателя будет работать только с независимым локально кэшированным соединением, а не с внешним кэшированием ».

Может ли кто-нибудь объяснить, почему?

  1. Вам действительно не нужно кэшировать сеансы для контейнеров-слушателей, потому что сеансы долговечны; кеширование очень полезно для частого короткого использования, например, с помощью JmsTemplate.
  2. Проблема действительно в том, что cacheConsumers = true (по умолчанию). При использовании динамического масштабирования и остановки слушателя сеанс возвращается в кеш, но брокер не знает, что на этом сеансе никто не будет потреблять, поэтому вы застряли в сообщениях, находящихся в кеше, которые не будут прочитаны до тех пор, пока эта сессия используется повторно при увеличении громкости.

Примечание. Если вы хотите, чтобы JmsTemplate работающий в streamе контейнера, участвовал в транзакции контейнера, вы должны использовать CachingConnectionFactory чтобы производители могли кэшироваться, но вы должны отключить кеширование потребителей на заводе, если у вас есть переменная параллелизм.

Interesting Posts

программно добавлять столбцы и строки в WPF Datagrid

Почему System.nanoTime () медленнее (по производительности), чем System.currentTimeMillis ()?

Установка цифрового идентификатора в перспективе 2013

Java: ограниченные подстановочные знаки или параметр ограниченного типа?

Должен ли я передать std :: function по const-reference?

LINQ – Left Join, Group By и Count

Что является хорошей альтернативой iDVD OneStep DVD для копирования видео с видеокамеры на DVD (в Mac OS X)?

Тот же шрифт, кроме его веса, выглядит по-разному в разных браузерах

regex для сопоставления чего-либо, если ему не предшествует что-то другое

Страtagsи для чтения в CSV-файлах?

Событие триггера, когда кнопка нажата в Android

ArrayList не обновляется внутри функции onChildAdded

w3c html ошибка проверки – Раздел не имеет заголовка. Рассмотрите возможность использования элементов h2-h6 для добавления идентифицирующих заголовков ко всем разделам

Можно ли кэшировать методы POST в HTTP?

Как включить Bash в Windows 10?

Давайте будем гением компьютера.