Встречается на 11% собеседований по Analytics

Для чего нужен брокер сообщений

Брокер сообщений — это промежуточное ПО, которое обеспечивает асинхронный обмен сообщениями между системами, сервисами или компонентами. Основные задачи:

  • Декомпозиция системы — уменьшает связность между компонентами.
  • Гарантированная доставка — сообщения не теряются, даже если получатель временно недоступен.
  • Балансировка нагрузки — распределяет задачи между потребителями (например, через очереди).
  • Масштабируемость — позволяет добавлять новых отправителей/получателей без изменения логики.

Пример с RabbitMQ (Python):

python
import pika

# Отправитель  
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))  
channel = connection.channel()  
channel.queue_declare(queue='hello')  
channel.basic_publish(exchange='', routing_key='hello', body='Hello World!')  

# Получатель  
def callback(ch, method, properties, body):  
    print(f"Получено: {body}")  

channel.basic_consume(queue='hello', on_message_callback= callback, auto_ack=True)  
channel.start_consuming()  

Используется в микросервисах, event-driven архитектуре, обработке фоновых задач.

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