问题标签 [djcelery]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - Celery, Django, Heroku -- ImportError: No module named tasks
我正在尝试使用 IronMQ 运行 celery 并缓存在 Heroku 上的 Django 项目中,但我收到以下信息:
我究竟做错了什么?以下是我的相关代码,djcelery 和我的应用程序都在已安装的应用程序中:
要求(Rabbit AMQP 在那里,因为我在 IronMQ 之前尝试过):
简介:
设置:
任务:
意见:
还尝试过(在视图中):
并尝试过(在视图中):
这也是我的结构:
python - Django celery 自定义定期任务未执行
我尝试使用此代码尝试动态添加/删除计划任务。
我的 tasks.py 文件如下所示:
问题是这些任务实际上并没有执行(即没有日志输出),但我在我的 celery 日志文件中收到以下消息,完全按计划进行:
我可以肯定地确认记录器配置正确并且工作正常。如果我尝试result = mytask.delay()
在交互式 shell 中调用,result.state
将无限期包含 state PENDING
。
编辑:另见Django Celery Periodic Tasks Run But RabbitMQ Queues are not Consumed
python - 芹菜节拍队列包括过时的任务
我在 Django 中使用定期 celery 任务。我曾经在我的 app/tasks.py 文件中有以下任务:
但是现在这个任务已经从我的 app/tasks.py 文件中删除了。但是,我一直在我的 celery 日志中看到对这个任务的调用:
我使用的 celery beat 调度程序似乎没有更新它的队列。这是我的 project/settings.py 文件中定义调度程序的方式:
重新启动芹菜工人没有帮助。仅供参考,我使用 Redis 代理。
如何清除或更新 celery beat 队列,以便不将较旧的任务发送给我的 celery worker?
django - 即使删除任务后 Djcelery 任务仍然安排
我已经安排了一个使用 django celery (djcelery) 的任务,方法是这样定义:
我决定从代码库中删除这个任务。
但是,即使重新启动 celery 服务器后,该任务仍会继续每 1 分钟安排一次,尽管由于该任务不再存在,因此它会报告错误消息。除了重新启动服务器之外,我是否必须做一些事情来从 djcelery 数据库中清除旧的定期任务?
celery - 如何在芹菜中每个块的执行结束时调用任务?
我正在尝试在完成大量任务时更新一些汇总数据。它基本上是在块的末尾实现和弦的概念。我该如何实施?
python - Celery chain breaks if one of the tasks fail
What is the point of Celery chain if the whole chain breaks if one of the tasks fail?!!
I have this Celery chain:
And I made workme2 fails with retries like this:
django - Django:djcelery Import error from celery import current_app as celery in virtualenv
好的,所以我已经尝试了我和谷歌可以提出的一切。我正在尝试在我的 Macbook Pro OSX 10.8.4 上的 virtualenv 下运行 django-celery。我在激活 virtualenv 时使用 pip 安装了 django-celery。在 virtualenv python 中导入 djcelery 时,我得到以下信息。
我试图启动一个完全干净的 virtualenv,但似乎仍然出现同样的错误。我已经尝试升级模块并拥有。
这也是我的 pip freeze 包的列表。
任何帮助将不胜感激!!
django - Celery 每年一次的 crontab 每秒执行一次任务
我正试图让一个任务在 1 月 1 日结束时运行。所以,我写了这个:
使用 crontab,我看到这个任务每秒都在运行。如果我将小时的值更改为 0,我看不到它执行(可能是因为它不是正确的时间)。有没有其他人观察到这种行为?我错过了一些基本的东西吗?
编辑:我再次检查。month_of_year
如果我按照上面的建议进行更改(不是) ,似乎行为会发生变化hour
。需要明确的是,如果配置了 crontab,day_of_month=31, month_of_year=12, hour=0, minute=49
它似乎可以工作(即,我看不到任务每秒都在运行)。如果配置了 crontab,day_of_month=31, month_of_year=1, hour=0, minute=49
它就不起作用(即,我看到任务每秒都在运行)。很奇怪...
django - Djcelery 强制使用“数据库”后端,如何正确绕过它?
在我的 Django 项目中,我根本不使用 SQL 数据库,我的主要数据存储是 MongoDB,通过mongoengine。
我想将 Celery 设置为使用 Redis 作为代理和后端。我安装了django-celery-with-redis,安装了 Redis (本地和生产中),并尝试在我的 settings.py 中使用以下内容:
但是,当我运行 celery 进程并收到要处理的任务时,在返回结果时,它抱怨 settings.DATABASES 配置不正确。这没有多大意义,因为我将 CELERY_RESULT_BACKEND 设置为 Redis。
我发现 djcelery 将后端覆盖djcelery.setup_loader()
到database
: 请参阅源代码中的 DjangoLoader 。
我努力寻找绕过 DjangoLoader 覆盖的方法,我发现的唯一方法是复制djcelery/loaders.py并修改该行:
然后在我的 settings.py 我做:
注意没有djcelery.setup_loader()
了。
这显然是一个丑陋的黑客,有没有更优雅的方法呢?
python - freeswitch python 脚本 errno 10 没有子进程
在使用 django.db 模型在拨号计划中使用一些 python 脚本运行 freeswitch 时,我遇到了一个问题。每当它启动时,它都会导致错误:
编辑:导致错误的行是从 django.db 的简单导入:
从 django.db 导入模型
整个设置已经在我无法访问的某些服务器上运行,因此 django 应用程序或脚本似乎没有问题......
任何帮助将不胜感激,因为我已经没有如何解决这个问题的想法了......