По-видимому, я настроил единую очередь для получения пользовательских сообщений в своем приложении. Ниже приведена конфигурация.
<!-- Creates a queue for consumers to retrieve messages -->
<rabbit:queue name="UserPostpublishQueue" durable="true">
</rabbit:queue>
<!-- queue for sending notifications to users -->
<rabbit:queue name="notificationQueue" durable="true"/>
<!-- Fanout exchange for a pubsub bound to UserPostpublishQueue -->
<fanout-exchange name="broadcastEvents" durable="true" xmlns="http://www.springframework.org/schema/rabbit">
<bindings>
<binding queue="UserPostpublishQueue"/>
</bindings>
</fanout-exchange>
<rabbit:template id="amqpTemplate" connection-factory="connectionFactory" retry-template="retryTemplate"
exchange="broadcastEvents" channel-transacted="true"/>
В коде я только что автоматически подключил шаблон AMQP.
@Autowired
AmqpTemplate amqpTemplate;
amqpTemplate.convertAndSend(post);
Теперь я должен ввести еще одну очередь уведомлений. Я не уверен, как это сделать. Связываю ли я очередь с тем же разветвленным обменом, при этом обмен толкает сообщение пользователя в очередь уведомлений.
Или мне создать еще один разветвленный обмен, а затем связать очередь уведомлений с этим обменом, но как мне тогда зарегистрировать этот новый обмен с помощью шаблона amqp?
Или мне создать прямой обмен как для сообщений пользователя, так и для очереди уведомлений?
Я не уверена. Любая помощь будет оценена по достоинству.