Встречается на собеседованиях • сегодня

Что такое точки обмена в RabbitMQ

Точки обмена (exchanges) в RabbitMQ — это сущности, которые принимают сообщения от продюсеров и распределяют их в очереди согласно определённым правилам (типу exchange). Они действуют как маршрутизаторы.

Основные типы exchanges:

  1. Direct — сообщение идёт в очередь, чей routing key точно совпадает с ключом сообщения.
  2. Fanout — сообщение рассылается во все привязанные очереди (broadcast).
  3. Topic — routing key сообщения сопоставляется с паттерном очереди (с поддержкой wildcards * и #).
  4. Headers — маршрутизация на основе заголовков сообщения (а не routing key).

Пример объявления exchange в Python (с библиотекой pika):

python
channel.exchange_declare(
    exchange='logs',
    exchange_type='fanout'
)
channel.basic_publish(
    exchange='logs',
    routing_key='',  # Не требуется для fanout
    body='Сообщение для всех очередей'
)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы