Nginx通过uwsgi发布Django项目导致Apscheduler计划任务不能正常运行

说明

在项目中,需要使用到定时执行函数的操作,通过Apscheduler写了一个定时任务,启动时发现出现以下错误。

出现以上错误后,项目还能正常运行,不过会消耗大量服务器资源。通过项目长时间的运行,会出现以下错误。

解决方式

此情况在开发环境中没有遇到(开发环境使用python manager.py runserver 0.0.0.0:80启动项目),而在生产环境中使用python manager.py runserver 0.0.0.0:80启动项目也正常。通过网上查询资料,没有找到解决方法。最后无意间发现是由uwsgi的配置导致的,更改uwsgi.ini文件后,项目正常运行。

之前的配置:

解决问题之后的配置:

借鉴资料

Django APScheduler + uwsgi 定时任务重复运行

django 异步执行定时任务APScheduler

Django Nginx+uwsgi 安装配置

Django中使用django-apscheduler执行定时任务

二〇二〇年四月十五日 10:10:52

THE END