Выбор ответа Senior Очереди, логи и микросервисы обновлено

Exchange в RabbitMQ

Вопрос

В RabbitMQ отправитель публикует сообщение в exchange типа fanout. Куда оно попадёт?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Во все очереди, привязанные к этому exchange, ключ не важен. Типы exchange: direct (точное совпадение ключа маршрутизации), topic (шаблоны вида order.), fanout (всем привязанным очередям), headers (по заголовкам).

Варианты ответа

  1. В очередь с именем, равным ключу маршрутизации сообщения
  2. В очереди, чей шаблон привязки совпал с ключом маршрутизации
  3. Во все очереди, привязанные к этому exchange, ключ не важенправильный ответ
  4. Обратно отправителю, если у exchange нет привязанной очереди с ключом

Разбор

Типы exchange: direct (точное совпадение ключа маршрутизации), topic (шаблоны вида order.*), fanout (всем привязанным очередям), headers (по заголовкам). Отправитель в RabbitMQ пишет в exchange, а не в очередь напрямую, поэтому «сообщение пропало» часто значит, что нужная очередь не привязана к exchange.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.