Django asgi单线程执行器已经在使用,会出现死锁部署错误



我使用gunicorn为django-asgi应用程序运行的命令如下:

gunicorn -b '0.0.0.0:8000' myproject.asgi:application -w 4 -k uvicorn.workers.UvicornWorker --access-logfile /logs/access.log --access-logformat "%(h)s %(l)s %(u)s %(t)s %(r)s %(s)s %(b)s %(f)s" >> /logs/error.log

当我尝试访问应用程序的任何端点时,我会得到已经在使用的单线程执行器,会死锁错误。

我使用以下软件包版本:

Django=3.2.4
asgiref==3.4.0
uvicorn==0.15.0
gunicorn==20.1.0

我通过从gunicorn run命令中删除:application修复了这个问题,如下所示:

gunicorn -b '0.0.0.0:8000' myproject.asgi -w 4 -k uvicorn.workers.UvicornWorker --access-logfile /logs/access.log --access-logformat "%(h)s %(l)s %(u)s %(t)s %(r)s %(s)s %(b)s %(f)s" >> /logs/error.log

最新更新