Работал ли с маршрутизацией RabbitMQ

Python Middle Без компании
Работал ли с маршрутизацией RabbitMQ
Ответы
Да, работал. RabbitMQ поддерживает несколько типов маршрутизации через exchange: **direct**, **fanout**, **topic**, **headers**. - **Direct** – сообщение идёт в очередь с точно совпадающим routing_key. - **Fanout** – рассылка во все связанные очереди (broadcast). - **Topic** – маршрутизация по шаблону (например, `logs.*` или `*.error`). - **Headers** – маршрутизация по атрибутам сообщения (редко используется). Пример с **topic exchange**: ``` import pika connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) channel = connection.channel() channel.exchange_declare(exchange='topic_logs', exchange_type='topic') routing_key = 'logs.error' message = 'Critical error!' channel.basic_publish( exchange='topic_logs', routing_key=routing_key, body=message ) print(f"Sent: {message}") connection.close() ``` Для привязки очереди к exchange используется `queue_bind()`.