Как стать автором
Обновить

Комментарии 9

Вы меня извините, конечно, но заголовок статье вообще не соответствует. Возможности раббита не ограничиваются типами обменников.

Возможно, вы правы: заголовок выбран не совсем удачно. Цель статьи - дать минимально необходимый набор информации, которой хватит для работы с RabbiMQ для людей, которые с ним вообще не знакомы. Как показывает практика, если грузить таких людей всей возможной информацией (либо даже упоминанием всего, что есть, но мы это не рассматриваем), то воспринимается это тяжело. Поэтому лучше сделать вид, что этой информации не существует (на данном этапе) а потом постепенно углублять полученные знания. В принципе, поэтому я и постарался оставить ссылками материалы, которые считаю полезными в качестве следующего шага для углубления знаний.

Если говорить о небольшом цикле статей, как вы считаете, какие механизмы стоит осветить следующими? Я думал об ack/nack/reject, туда же message ttl и dead letter exchanges/queues, либо написать о direct-reply, т.к. информации об этом механизме, как и примеров кода в интернете почти нет.

Спасибо за статью!

Поправьте, пожалуйста, в третьем примере (Topic Exchange) в broker.bublish exchange=exchange, а не exch.

И в четвертом примере (Headers Exchange) немного резануло logger.info вместо print в третьем хендлере (логично везде делать либо логирование, либо принты).

Спасибо за замечание, поправил)

Поэтому я и решил написать эту статью: она нацелена на "чайников" - вы
легко можете показать ее вашим джунам, и этого уже должно быть
достаточно для начала работы с RabbitMQ.

Извините, но сразу же пишете непонятное.

# Объявляем Direct Exchange exchange = RabbitExchange("test-exchange", type=ExchangeType.DIRECT)

Где простите имена сервера портов и тд? Куда оное подключается?

Ну и в целом, учитывая что обычно тот кто наполняет очередь и тот кто разгребает оную это разные сущности (возможно даже живущие на разных серверах) пример одного скрипта не добавляет ясности и понимания происходящего условному джуну.

Спасибо, действительно некоторое упущение. Немного подправил материал, чтобы этот момент стал яснее.

Извините но для джуна все равно не очень.

К примеру, берем первый скрипт. Запускаем, и... и ничего. Причем судя по логам он даже не пытается стучаться в кролик.

Хуже не бывает когда пример не рабочий и нет никакого вывода ошибок.

Так, уже моя очередь извиняться, но это уже какая-то провокация и дезинформация с вашей стороны пошла. Все примеры полностью рабочие и делают именно то, что и описано. Я буквально только что пошел и прогнал их еще раз.

Возможно, вы пытались запустить этот скрипт напрямую через `python ...`, а не **PROPAN CLI**. Видимо, вы не открыли даже первую страницу документации или README того, что пытаетесь использовать.
В любом случае, раз статья для начинающих, то я должен был и это предусмотреть...
Так что добавил еще пару строчек с запуском в примеры.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории