Я использую сельдерей 3.0.18 с RabbitMQ 3.0.2. У меня есть задача, отправленная в другое приложение с помощью celery.send_task, и я вижу вызов send_task в своих журналах, я вижу, что пакеты покидают рабочий экземпляр, и я вижу, как пакеты попадают в экземпляр RabbitMQ, когда я вызываю tcpflow -ce -i any port 5672
, однако в очередь попадает только первое сообщение. Все они имеют один и тот же ключ маршрутизации, я пытался воссоздать обмен и привязки и даже новый экземпляр RabbitMQ, и ничего не работает. Это работало отлично в течение нескольких месяцев, пока нам не пришлось перестраивать RabbitMQ с нуля после аварии в нашей инфраструктуре AWS. Как ни странно, у меня есть такая же настройка, которая работает с другим приложением, используя тот же брокер и тот же обмен, привязку и очередь, и он отлично работает там. Кроме того, он работает, когда я отправляю сообщения на тот же обмен, используя тот же вызов из сценария управления, который запускается из оболочки в том же экземпляре, но он не работает, когда он отправляется из задачи сельдерея в рабочем процессе.RabbitMQ отбрасывает сообщения после первого
Любые идеи о том, что может быть проблемой?
Вы уверены, что ваша заявка после отправки задачи там - не получила ее как работник сельдерея. Полагаю, это будет похоже на то, что вы описываете – Rustem
Да, я уверен. –