Какой опыт работы с RabbitMQ
Python
Senior
Без компании
Какой опыт работы с RabbitMQ
Ответы
Работал с RabbitMQ в нескольких проектах, где требовалась асинхронная обработка задач и обмен сообщениями между сервисами.
Основные моменты:
- Настройка и конфигурация брокера (очереди, обменники, привязки)
- Работа с разными типами exchange (direct, fanout, topic)
- Реализация publisher-subscriber и worker patterns
- Обработка ошибок и retry логика (например, через dead-letter queues)
- Использование подтверждений (ack/nack) для надежной доставки
Пример кода для отправки сообщения:
```
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.queue_declare(queue='task_queue', durable=True)
channel.basic_publish(
exchange='',
routing_key='task_queue',
body='Hello World!',
properties=pika.BasicProperties(delivery_mode=2) # persistent
)
connection.close()
```
Также есть опыт интеграции с Celery для фоновых задач.