Потенциальные проблемы с потоками Django/Celery/amqp

В настоящее время я работаю с системой, которая предоставляет бэкенд Django для обслуживания rest API. В дополнение к этому мы предоставляем обновления экземпляру RabbitMQ с помощью celery при изменении записей в приложении Django.

uwsgi используется для размещения нескольких (5) экземпляров бэкенда Django, а также имеет настройку attach-daemon, которая запускает 5 рабочих экземпляров celery, т.е: attach-daemon = %(home)/bin/celery --app=djangoProject.worker.app worker -c 5 -l INFO

Недавно мы добавили некоторые функциональные возможности, которые увеличивают скорость обновления в некоторых обстоятельствах, и обнаружили, что мы обычно не получаем ошибки UnexpectedFrame из библиотеки amgqp:

amqp.exceptions.UnexpectedFrame: Получено 0x00 при ожидании 0xce

Мы подозреваем, что это какая-то проблема типа потокообразования, но ищем любой совет, как решить эту проблему.

Ищу любой совет о том, как преодолеть подобную проблему, или хотя бы дополнительно диагностировать, где кроется неисправность.

Вернуться на верх