Внутренний брокер сообщений

В PassOffice для системных событий и пользовательских уведомлений используется брокер сообщений.

Для общения с брокером PassOffice открывает одно соединение с некоторым количеством сессий. Сессии используются для получения и отправки сообщений, и чем выше их количество, тем выше пропускная способность всей системы.

Количество сессий настраивается индивидуально и зависит от множества факторов. По умолчанию установлено значение 10.

Опция для конфигурирования в application.properties:

spring.jms.cache.session-cache-size

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

passoffice.artemis.memory-usage-limit

По умолчанию выставлено значение 64 (в мегабайтах).

В случае, если сообщения занимают больше места, чем указано в passoffice.artemis.memory-usage-limit, они сохраняются на диск. При этом размер под временные сообщения на диске конфигурируется опцией (в процентах):

passoffice.artemis.storage-usage-limit

По умолчанию выставлено значение 90,это означает, что брокер будет сохранять и обрабатывать сообщения до тех пор, пока диск заполнен менее, чем на 90% от общего его объема.

Если диск заполнен более, чем на passoffice.artemis.storage-usage-limit, брокер заблокирует всех поставщиков сообщений и сообщения не будут отправляться до тех пор, пока они не будут доставлены всем потребителям.

Last updated

Was this helpful?