celery--定时任务

简介: celery--定时任务

定时任务配置信息属性:

  • task:要执行的任务名字
  • schedule :执行的频率 。
  • args:位置参数 (list 或 tuple).
  • kwargs:键值参数 (dict).
  • options:执行选项 (dict).
  • 这可以是任何被apply_async()支持的参数。
  • relative:如果 relative 是 true ,时间表“由时钟时间”安排,意味着 频率近似到最近的秒,分钟,小时或天,这取决于时间差中的时间间隔。
  • 默认relative是false,频率不会近似,会相对于celery的启动时间。


crontab参数:

  • crontab()实例化的时候没设置任何参数,都是使用默认值,表示1分钟。crontab常用有5个参数:
  • minute:分钟,范围0-59;
  • hour:小时,范围0-23;
  • day_of_week:星期几,范围0-6。以星期天为开始,即0为星期天。这个星期几还可以使用英文缩写表示,例如“sun”表示星期天;
  • day_of_month:每月第几号,范围1-31;
  • month_of_year:月份,范围1-12。

注意:默认值都是"*"星号,代表任意时刻


举例:

  • crontab() 每分钟执行
  • crontab(minute=15) 每小时的15分时刻执行一次任务
  • crontab(minute=0, hour=0) 每天0点0分时刻执行任务
  • crontab(minute='59',hour='11') 每天的11点59分执行一次任务
  • crontab(minute='0,30')
  • 0分和30分执行一次任务,逗号是表示多个表达式or逻辑关系
  • crontab(hour='9-12,20')
  • 指定9点到12点和20点中每分钟执行任务
  • 其他举例:
  • crontab(minute=0, hour=0) 每天午夜执行
  • crontab(minute=0, hour=’*/3’) 每三个小时执行: 午夜, 3am, 6am, 9am, 正午, 3pm, 6pm, 9pm.
  • crontab(minute=0,hour=’0,3,6,9,12,15,18,21’) 同上
  • crontab(minute=’*/15’) 每15分钟执行
  • crontab(day_of_week=’sunday’) 星期日每分钟
  • crontab(minute=’‘,hour=’‘, day_of_week=’sun’) 同上
  • crontab(minute=’*/10’,hour=’3,17,22’, day_of_week=’thu,fri’) 每10分钟执行,仅限于周六日3-4 am, 5-6 pm, and 10-11 pm
  • crontab(minute=0, hour=’/2,/3’) 偶数小时或者能被3整除的小时数执行
  • crontab(minute=0, hour=’*/5’) 被5整除的小时数,如3pm
  • crontab(minute=0, hour=’*/3,8-17’) 8am-5pm能被3整除的
  • crontab(0, 0, day_of_month=’2’) 每月第2天
  • crontab(0, 0,day_of_month=’2-30/3’) 每偶数天
  • crontab(0, 0,day_of_month=’1-7,15-21’) 每月1和3周
  • crontab(0, 0, day_of_month=’11’,month_of_year=’5’) 每年5月11日
  • crontab(0, 0,month_of_year=’*/3’) 每个季度第1月

相关文章
|
2月前
|
消息中间件 NoSQL Redis
【译】Celery文档1:First Steps with Celery——安装和配置Celery
【译】Celery文档1:First Steps with Celery——安装和配置Celery
56 14
|
12月前
|
缓存 NoSQL Redis
celery--实现异步任务
celery--实现异步任务
|
12月前
|
消息中间件 开发框架 NoSQL
celery--介绍
celery--介绍
Golang:robfig/cron执行定时任务
Golang:robfig/cron执行定时任务
487 0
|
存储 监控 NoSQL
日夕如是寒暑不间,基于Python3+Tornado6+APScheduler/Celery打造并发异步动态定时任务轮询服务
定时任务的典型落地场景在各行业中都很普遍,比如支付系统中,支付过程中因为网络或者其他因素导致出现掉单、卡单的情况,账单变成了“单边账”,这种情况对于支付用户来说,毫无疑问是灾难级别的体验,明明自己付了钱,扣了款,但是订单状态却未发生变化。所以,每一笔订单的支付任务流程中都需要一个定时轮询的备选方案,一旦支付中发生问题,定时轮询服务就可以及时发现和更正订单状态。
日夕如是寒暑不间,基于Python3+Tornado6+APScheduler/Celery打造并发异步动态定时任务轮询服务
|
PHP Windows
laravel定时任务,tp定时任务,thinkphp定时任务
laravel定时任务,tp定时任务,thinkphp定时任务
165 0
|
Python
Python编程:Celery执行异步任务和定时任务
Python编程:Celery执行异步任务和定时任务
240 0
Python编程:Celery执行异步任务和定时任务
|
NoSQL API 调度
Celery初探
Celery初探
220 0
|
监控 Python
Python编程:Django中使用Celery执行异步任务和定时任务
Python编程:Django中使用Celery执行异步任务和定时任务
210 0
|
NoSQL 数据可视化 应用服务中间件