DirectMessageListenerContainer без настроенного исполнителя задач на TomCat? - PullRequest
0 голосов
/ 23 февраля 2019

Я устанавливаю DirectMessageListenerContainer для моего приложения обмена сообщениями.Я работаю с Tomcat, Spring, AMQP.

Документы имеют это предупреждение https://docs.spring.io/spring-amqp/reference/#threading

С DirectMessageListenerContainer необходимо убедиться, что фабрика соединений настроена с задачейИсполнитель, у которого было достаточно потоков для поддержки желаемого параллелизма во всех контейнерах слушателей, которые используют эту фабрику.Размер пула по умолчанию - только пять.

В моем приложении я не настроил никакого исполнителя, поэтому я использую по умолчанию.Причина, по которой я этого не сделал, заключается в том, что я работаю с tomcat, для которого установлено 10000 макс. Потоков.Я собираюсь в конечном итоге стать узким местом с размером пула пять?

1 Ответ

0 голосов
/ 23 февраля 2019

Потоки слушателя не имеют ничего общего с потоками Tomcat.Я только что посмотрел на последний amqp-клиент (Java-клиент RabbitMQ, который использует Spring AMQP), и число потоков по умолчанию теперь ...

DEFAULT_NUM_THREADS = Runtime.getRuntime().availableProcessors() * 2;

То, достаточно ли этого для вашего приложения, полностью зависит от вашегоприложения, сколько времени занимает обработка сообщения и сколько параллелизма вы настраиваете (consumersPerQueue).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...