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

Что в RabbitMQ между продюсером и консьюмером

В RabbitMQ между продюсером и консьюмером находится брокер сообщений, который состоит из нескольких ключевых компонентов:

  1. Exchange — получает сообщения от продюсера и решает, в какую очередь их направить, на основе типа exchange (direct, fanout, topic, headers) и routing key.

  2. Queue — буфер, хранящий сообщения до их обработки консьюмером. Может быть durable (сохраняется после перезагрузки) или exclusive (удаляется при отключении консьюмера).

  1. Binding — связь между exchange и очередью, определяющая правила маршрутизации сообщений.

Пример кода (отправка и получение сообщения):

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"Received: {body}")
channel.basic_consume(queue='hello', on_message_callback=callback, auto_ack=True)
channel.start_consuming()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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