我有一个配置为使用uWSGI在nginx后面运行的django应用程序。在一台单独的机器上,我正在运行芹菜,并将长时间运行的任务从Web服务器推送到任务机器。大多数任务I / O都是出站http请求,持续一个小时或更长时间。任务经纪人是redis。
当任务运行超过一两分钟时,网络服务器无响应(503错误)。
python应用程序中的任何地方都没有出错。任务正常完成,之后Web服务器继续处理请求。
以前有没有人经历过这个,如果有的话,你是怎么处理它的?感谢
答案 0 :(得分:0)
默认情况下,uWSGI以单个进程和单个线程
开始
来自uwsgi docs。根据您的配置,这可能会导致问题。
更新:刚刚注意到你没有说uwsgi,但只是wsgi - 但是根据你的wsgi实现,问题可能是由同样的事实造成的。
答案 1 :(得分:0)
几天后想出来了。我们使用的是一款名为django-health-check的django应用程序。它有一个名为health_check_celery3的组件,该组件位于已安装的应用程序中。这在芹菜运行时加载有问题,从而导致整个应用程序停止运行。去除后,芹菜按原样运行。