2014-11-05 2 views
1

Сегодня я попытался смоделировать сценарий, где в теге верблюда «to» я поставил имя очереди с неправильной настройкой (которого там не было) Верблюд или RabbitMq вместо того, чтобы бросать исключение назад для завершения потока маршрута. Intrgigued Я написал пример программы для отправки сообщения, используя «channel.basicPublish» с неправильным именем очереди. У меня никогда не было никаких исключений, отброшенных назад от клиента mc rabbit.Camel with rabbitmq - имя очереди Misspelt

Однако, если имя обмена было неправильным, я получил исключение. Это ожидаемое поведение? Я попробовал добавить приемник возврата, подтвердить прослушиватель, обработчик исключений и т. Д., Но никто из них не вызвал. Любые подсказки?

ответ

1

Сообщения публикуются до обмениваются, поэтому обмен должен быть при публикации сообщений. Во время публикации RabbitMQ не заботится о очередях, если не указан флаг mandatory, или канал находится в режиме подтверждения.