Динамически установить свойство max-messages-per-poll для pollerMetaData - PullRequest
0 голосов
/ 23 апреля 2019

Мне нужно изменить максимальное количество сообщений на опрос в зависимости от значения счетчика. Это должно позволить мне получить подмножество записей, которые хранятся в MongoDbMessageStore

Я попытался добавить AroundAdvice в PollerMetaData. Использовал DirectFieldAccessor для установки значения maxMessagesPerPoll. Однако при каждом опросе весь набор данных в MongoDbMessageStore опрашивается и удаляется.

1 Ответ

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

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

QueueChannel - этопотребляется PollingConsumer, который имеет setMaxMessagesPerPoll(), который вы можете использовать в своей логике.

Поэтому, когда вам нужно изменить это значение, вы просто находите соответствующий bean-компонент для этой конечной точки и вызываете этот метод для изменения настроек во время выполнения.

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