Я создал оболочку rabbitmq, которая публикует сообщения для потребителей, и это работает хорошо.
Могу ли я также создать рабочую очередь (например, gearman) в rabbitmq, которая может распределять долгосрочные задачи среди потребителей, а потребители, в свою очередь, уведомляют издателя о результатах.
Я полагаю, что это потребовало бы, чтобы издатель также выступал в роли потребителя, что я не уверен, как реализовать. (Пожалуйста, поправьте меня, если я ошибаюсь).
Или rabbitmq просто не инструмент для такого случая.
Спасибо,
RabbitMQ поддерживает этот тип шаблона. Посмотрите на Учебник по RPC для начальной загрузки о том, как реализовать этот шаблон.
Это может быть реализовано по-разному в зависимости от ваших потребностей:
Обычно это подразумевает идентификатор корреляции для сопоставления запроса с ответом, или он может быть без сохранения состояния, если ответ содержит всю необходимую информацию.
Это действительно зависит от ваших потребностей.
Других решений пока нет …