安排 Django Celery 定期任务从某个时间运行到另一个时间

     2023-02-24     134

关键词:

【中文标题】安排 Django Celery 定期任务从某个时间运行到另一个时间【英文标题】:Schedule Django Celery periodic tasks to run from time to other time 【发布时间】:2017-09-25 21:47:53 【问题描述】:

我如何才能完成运行 Django Celery 任务,使其仅在周一至周五运行,并且在那些日子仅从美国东部标准时间上午 9 点到下午 5 点运行?

celery.py

from celery.schedule import crontab


app.conf.beat_schedule = 
    'compute-every-5-seconds': 
         'task': 'sum',
         'schedule': crontab(),
     ,
  

我应该向 crontab() 添加哪些参数以使其在那些日子和仅在这些时间之间运行?

【问题讨论】:

【参考方案1】:

celery.py

from celery.schedule import crontab
app.conf.beat_schedule = 
    'compute-every-minute-mon-through-friday-9-to-5': 
         'task': 'sum',
         'schedule': crontab(minute='*/1',
hour='9-17', day_of_week='mon,tue,wed,thu,fri'),
     ,
  

minute='*/1' - 每分钟运行一次

hour='9-17' - 上午 9 点到下午 5 点运行

day_of_week='mon,tue,wed,thu,fri' - 周一至周五

其中大部分都可以在documentation 页面上找到,请查看!

【讨论】:

Celery 和 Django 的定期任务

】Celery和Django的定期任务【英文标题】:PeriodicTaskswithCeleryandDjango【发布时间】:2014-02-2306:11:22【问题描述】:我无法使用Celery3.1.8、Django1.6.1和RabbitMQ运行定期任务。我对当前的文档有点困惑,因为我知道不再需要django-celery来让... 查看详情

使用 django 和 celery 运行定期任务

】使用django和celery运行定期任务【英文标题】:Runningperiodictaskswithdjangoandcelery【发布时间】:2012-05-0911:35:47【问题描述】:我正在尝试使用Django-Celery-RabbitMQ组合创建一个简单的后台定期任务。我安装了Django1.3.1,我下载并设置了... 查看详情

如何从 django 前端安排任务?

】如何从django前端安排任务?【英文标题】:HowcanIscheduleataskattimefromdjangofrontend?【发布时间】:2017-11-1108:06:51【问题描述】:我正在使用Django编写灌溉系统,并使用Celery处理异步任务。在我的应用程序中,用户选择他想要激活灌... 查看详情

Django celery:安排重复任务,但开始日期固定

】Djangocelery:安排重复任务,但开始日期固定【英文标题】:Djangocelery:schedulingrecurringtaskbutwithfixedstartdate【发布时间】:2016-05-2411:01:34【问题描述】:目前djcelery允许我通过PeriodicTask模型安排重复任务。例如,一个任务以每分钟... 查看详情

检查 Celery 中计划定期任务的下一次运行时间(使用 Django)

】检查Celery中计划定期任务的下一次运行时间(使用Django)【英文标题】:CheckingthenextruntimeforscheduledperiodictasksinCelery(withDjango)【发布时间】:2017-08-1222:47:27【问题描述】:*使用celery3.1.25因为django-celery-beat1.0.1在调度周期性任务... 查看详情

在使用 django_celery_beat 设置的 Django 视图中使用 Celery 定期任务输出,并使用 Redis 设置缓存

】在使用django_celery_beat设置的Django视图中使用Celery定期任务输出,并使用Redis设置缓存【英文标题】:UseCeleryperiodictasksoutputinDjangoviewssetupwithdjango_celery_beatandCachinewithRedis【发布时间】:2020-10-2601:26:12【问题描述】:我正在尝试使... 查看详情

Django Celery 定期任务运行但 RabbitMQ 队列未被消耗

】DjangoCelery定期任务运行但RabbitMQ队列未被消耗【英文标题】:DjangoCeleryPeriodicTasksRunButRabbitMQQueuesAren\'tConsumed【发布时间】:2012-10-2720:56:56【问题描述】:问题通过celery的周期性任务调度器运行任务后,beat,为什么我在RabbitMQ中... 查看详情

Django celery 定期任务间隔更改未在数据库中更新

】Djangocelery定期任务间隔更改未在数据库中更新【英文标题】:Djangoceleryperiodictaskintervalchangeisnotupdatingindatabase【发布时间】:2020-11-0210:27:58【问题描述】:我正在使用Django2.2和Celery的周期性任务来创建一个cron作业,该作业之前... 查看详情

Elastic Beanstalk 上的 Django 中的定期任务(可能使用 celery beat)

】ElasticBeanstalk上的Django中的定期任务(可能使用celerybeat)【英文标题】:PeriodictasksinDjangoonElasticBeanstalk(possiblywithcelerybeat)【发布时间】:2016-04-2003:35:45【问题描述】:我正在尝试在ElasticBeanstalk上为我的Django应用程序设置一项日... 查看详情

Django Celery Beat 管理员更新 Cron Schedule 定期任务未生效

】DjangoCeleryBeat管理员更新CronSchedule定期任务未生效【英文标题】:DjangoCeleryBeatadminupdatingCronSchedulePeriodictasknottakingeffect【发布时间】:2017-03-2713:30:08【问题描述】:我正在CentOS7上使用Django10、RabbitMQ和Celery4运行一个站点。我的Cel... 查看详情

如何从 django 模板暂停和停止 celery 任务

】如何从django模板暂停和停止celery任务【英文标题】:Howtopauseandstopcelerytaskfromdjangotemplate【发布时间】:2020-12-2500:03:21【问题描述】:我正在开发一个使用celery异步运行任务的django应用程序。现在,用户可以从网页提交表单来启... 查看详情

使用 Django + Celery 更新 Haystack 搜索索引

】使用Django+Celery更新Haystack搜索索引【英文标题】:UpdatingaHaystacksearchindexwithDjango+Celery【发布时间】:2011-05-2012:22:20【问题描述】:在我的Django项目中,我使用的是Celery。我将crontab中的命令切换为定期任务,它运行良好,但它... 查看详情

Django 和 Celery 的示例:周期性任务

】Django和Celery的示例:周期性任务【英文标题】:ExamplesofDjangoandCelery:PeriodicTasks【发布时间】:2012-01-0316:47:46【问题描述】:我一直在与Django/Celery文档作斗争,现在需要一些帮助。我希望能够使用django-celery运行定期任务。我在... 查看详情

从 Celery 任务向 Channels 发送消息

...ytasktoChannels【发布时间】:2019-08-1519:24:32【问题描述】:Django2.1.1,Django频道2.1.3,芹菜4.2.1我在Celery中设置了一个任务,在任务结束时,我需要向客户端发送一条websocket消息。但是,永远不会发送websocket消息。没有抛出任何错误... 查看详情

Celery Django 未注册任务,shell 中未找到模块错误

】CeleryDjango未注册任务,shell中未找到模块错误【英文标题】:CeleryDjangonotRegisteringTasks,Modulenotfounderrorinshell【发布时间】:2015-12-0115:04:35【问题描述】:我正在尝试从Celery文档中运行一个基本示例,但是当我运行“从任务导入添... 查看详情

Heroku/Celery:一名工人同时执行任务?

...以便在Django/Heroku上同时在一个工作人员上运行?如果我安排某些功能每5分钟运行一次,它们会在开始运行时自动重叠,还是会等到所有其他任务完成?我是Celery的新手,坦率地 查看详情

在 django 中使用 Celery 执行周期性任务的问题

】在django中使用Celery执行周期性任务的问题【英文标题】:ProblemwithPeriodictasksindjangowithCelery【发布时间】:2020-09-2705:13:14【问题描述】:我的celery定期任务不起作用。我希望根据日期每晚更新我的数据库。这是我在应用程序目录... 查看详情

使用 Django-Celery 重试任务 - Django/Celery

】使用Django-Celery重试任务-Django/Celery【英文标题】:RetryingtaskswithDjango-Celery-Django/Celery【发布时间】:2011-06-1909:02:39【问题描述】:我在重试任务时遇到问题,这是测试任务的样子fromcelery.decoratorsimporttask@task()defadd(x,y):ifnotxornoty:r... 查看详情