От docs, я хочу использовать потребление из очередей, динамически меняя потребителей без перезапуска приложения.Spring RabbitMQ SimpleRabbitListenerContainerFactory использование
Я вижу, что версия Spring RabbitMQ поддерживает то же самое, но нет подсказки/примера/объяснения, чтобы изменить то же самое. Я не мог видеть соответствующий исходный код для того же самого или как пройти Params как maxConcurrentConsumers
Я использую конфигурации на основе XML-Спринг RabbitMQ наряду с пружинящей интеграции
<bean id="rabbitListenerContainerFactory"
class="org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory">
<property name="connectionFactory" ref="rabbitConnectionFactory"/>
<property name="concurrentConsumers" value="3"/>
<property name="maxConcurrentConsumers" value="10"/>
<property name="acknowledgeMode" value="AUTO" />
</bean>
<int-amqp:inbound-channel-adapter channel="lowInboundChannel" queue-names="lowLoadQueue" advice-chain="retryInterceptor" acknowledge-mode="AUTO" listener-container="rabbitListenerContainerFactory" />
<int-amqp:inbound-channel-adapter channel="highInboundChannel" queue-names="highLoadQueue" advice-chain="retryInterceptor" acknowledge-mode="AUTO" listener-container="rabbitListenerContainerFactory" />
Может кто-нибудь наставит меня, как динамически конфигурировать потребителей?
извините за поздний ответ. поэтому вы говорите один адаптер для разных «очередей». Каждая очередь будет иметь свою (другую) полезную нагрузку. Почему мы должны объединяться в один адаптер? , так что нам нужно иметь несколько listenerContainerFactory для каждой очереди? Почему он называется «Factory», я думал, что это единственная точка подключения для прослушивания нескольких очередей! – Reddy
О! Извините, я действительно пропустил эту часть. Нет, вы не можете использовать 'SimpleRabbitListenerContainerFactory' для' '. Его цель для конфигурации Annotation '@ RabbitListener'. Для конфигурации XML вы должны использовать определение bean-объекта SimpleMessageListenerContainer. И да: отдельный бит для каждого ''. Или просто полагайтесь на контейнер по умолчанию из '' –
Я не мог понять, как все еще можно динамически менять потребителей. Не могли бы вы дать мне пример example/code/xml config? – Reddy