CSActiveMQ CPP производитель - может ли один сеанс использовать несколько очередей? - PullRequest
0 голосов
/ 17 октября 2019

В вопросе и ответе здесь:

ActiveMQ Producer, несколько очередей, одна сессия

Тема, связанная с тем, что один производитель отправляет сообщения нескольким адресатам, покрыта одним адресатом. решение в Java.

Можно ли сделать то же самое в CPP / CMS?

Я пытался воспроизвести этот код с помощью API cms / activemq, но когда я пытаюсь отправить сообщение наВ другую очередь (место назначения) я получаю сообщения об ошибках, в которых говорится, что производитель может отправлять сообщения только в старое место назначения.

Без указания точного кода приведен поток ...

  • Создатьновый Factory
  • Установить URI посредника
  • Создать соединение
  • Начать соединение
  • Создать сеанс
  • Создать MessageProducer с временной очередью
  • Создать новую очередь
  • Использовать сеанс для создания сообщения
  • MessageProducer отправлять с использованием новой очереди и сообщения

1 Ответ

0 голосов
/ 19 октября 2019

Непонятно, что вы сделали с кодом, поскольку вы его не включили, но с учетом минимального ввода я предполагаю, что вы создаете производителя с фиксированным назначением, вызывая session->createProducer с некоторым назначением (звучит как временная очередь). Это создает продюсера, заключившего брак с этим пунктом назначения на всю жизнь, и вызов метода отправки, который принимает пункт назначения, требуется для выброса. Если вы хотите объединить производителя и отправить его по разным адресам, вам нужно создать его с адресом NULL.

...