python - django celery 不在 digitalocean 服务器中执行 tasks.py
问题描述
我Celery
在我的django
项目中使用了计划任务,它在本地服务器中有点完美,我将此更新上传到我的digitalocean
服务器,经过 3 天的搜索和修复问题,我无法理解我犯的那些错误!,这是我的项目结构
├── app
│ ├── __init__.py
│ ├── admin.py
│ ├── urls.py
│ ├── models.py
│ ├── apps.py
│ └── views.py
├── manage.py
├── corsa
│ ├── __init__.py
│ ├── celery.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── requirements.txt
└── templates
├── base.html
├── other
任务.py:
@shared_task
def just_testing():
print(' test log ')
@shared_task
def tasks_to_do_daily():
# some stuff to do daily
@shared_task
def tasks_to_do_weekly():
# some stuff to do weekly
芹菜.py:
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'corsa.settings')
app = Celery('corsa')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()
app.conf.beat_schedule = {
'add-contrab1': {
'task': 'app.tasks.just_testing',
'schedule': 6.0,
},
'add-contrab2': {
'task': 'app.tasks.tasks_to_do_daily',
'schedule': crontab(minute='26', hour='09'),
},
'add-contrab3': {
'task': 'app.tasks.tasks_to_do_weekly',
'schedule': crontab(minute='00', hour='00', day_of_week='sat,tue'),
},
}
app.conf.CELERY_TIMEZONE = 'Asia/Hong_Kong'
设置.py:
CELERY_BROKER_URL = 'amqp://localhost'
好的,现在问题部分..
- 对于本地
我尝试了这些推荐celery -A corsa worker -l info
,所有主题都没有错误celery -A corsa beat -l info
,celery worker -A corsa --loglevel=INFO
但根本没有执行任何任务代码 tasks.py !
唯一对我有用的是:
celery -A corsa worker -B
我不知道为什么,我搜索了原因,但找不到明确的答案解释原因
- 对于数字海洋
我跟进了 digitalocean 服务器部分标题的本教程:使用 Supervisord和这个中文网站管理生产中的工作进程(由谷歌翻译)但没有像我一样工作,我将推荐部分从改为但仍然注意到 wokring一点都没有!顺便说一句,所有相关的推荐都可以完美地作为推荐,但仍然 tasks.py 根本没有执行! celery worker -A corsa --loglevel=INFO
celery -A corsa worker -B
Supervisord
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl stop corsa
sudo supervisorctl start corsa
sudo supervisorctl status corsa
所以对于服务器部分,我仍然不知道问题是什么以及如何解决。请问有什么帮助吗?
解决方案
推荐阅读
- c++ - 您可以在开关中使用 OR 吗?
- django - 传单绘制不适用于 Django - 形状永远不会完成
- ruby - 如何绘制一个大小为 n 的方形网格到控制台?
- button - Python tkinter - 删除带有关联按钮的单个标签
- sql-server - SSIS 以 varchar(不是 nvarchar)格式将访问文本导入 SQL Server
- r - 从元素序列中减去
- git - 如何为现有的私有仓库添加新的 github 令牌?
- python - 在 Python 中从具有多个多元时间序列的数据帧创建数组数组
- python-3.x - Python 打印列表中的每 100 个项目
- unity3d - 为什么计算着色器可能会从未更改的数据中随机产生不同的结果?