Как создать систему, которая будет прослушивать одну очередь кролика MQ, а затем выполнять серию заданий через кролика mq, а затем отвечать
Я хочу разработать такую систему, которая будет слушать на кролика MQ #queue1
- это займет сообщение от кролика MQ
- В сообщении проверьте тип запроса
- это создаст пакет такого типа
- он отправит запрос на другой rabbit mq #Queue2
- ждать ответа
- получить ответ и в зависимости от ответа поместит запрос один #queue3
- снова ждать ответа
- получить ответ
- он отправит сводный ответ на первый запрос, пришедший в очередь1
Какой тип системы / технологии обмена сообщениями spring-amqp мне следует использовать для этой схемы и как (например, Spring Remoting с AMQP или корреляция сообщений с очередью ответов и идентификатором корреляции)
1 ответ
Почему вы хотите, чтобы потребители #queue1
дождаться ответа и затем отправить его #queue2
Вы можете разработать шаги как
- Потребитель примет сообщение от
#queue1
- В сообщении проверьте тип запроса
- это создаст сообщение такого типа
- он отправит запрос на другой кроликмк
#Queue2
- Потребитель
#Queue2
будет потреблять сообщение. в зависимости от результата обработки (который вы бы отправили в качестве ответа), запрос будет#queue3
- Потребитель
#Queue3
будет потреблять сообщение. Консолидировать предыдущий результат с текущим результатом#queue4
с консолидированным результатом. - Потребитель
#Queue4
будет потреблять сообщение. Консолидировать предыдущий результат с текущим результатом#queue5
с консолидированным результатом. - Предполагая, что окончательная обработка будет сделана на
#queue5
, Объединить текущие результаты с предыдущим результатом и отправить ему сводный ответ#replyQueue