zoukankan      html  css  js  c++  java
  • python做定时任务schedule、aspscheduler、celery

    schedule是轻量级的定时任务模块,不支持年级别的任务。

    aspscheduler是全能型的定时任务框架,支持定时任务、一次性任务等等

    celery是主要是异步任务,也可以用到一些定时任务,但是设置太麻烦,不支持一次性任务。

    schedule用法:

    推荐博客:https://zhuanlan.zhihu.com/p/161103729

     # 每的任务,都是规定时间的 + 当前时间 是下次运行时间,不能固定多少执行。

    aspscheduler用法:

    // 以下是内存存储任务,并且直接运行阻塞的写法

    from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor
    from pytz import timezone
    from apscheduler.schedulers.background import BlockingScheduler
    from apscheduler.triggers.cron import CronTrigger
    
    from my_crontab import task
    
    executors = {
        'default': ThreadPoolExecutor(10),
        'processpool': ProcessPoolExecutor(3)
    }
    job_defaults = {
        'coalesce': False,
        'max_instances': 3
    }
    
    # 实例调度器对象
    scheduler = BlockingScheduler(executors=executors, job_defaults=job_defaults, timezone=timezone('Asia/Shanghai'))
    
    # 每30秒执行一次
    scheduler.add_job(func=task.summary_expire_info, trigger=CronTrigger(second=30))
    
    # print(scheduler.get_jobs())
    
    print("crontab run~")
    scheduler.start()

    # BlockingScheduler 用它实例的,调用start对陷入阻塞中,适合执行运行该文件的程序使用

  • 相关阅读:
    java的内存分配
    Java多线程sleep和wait的区别
    java static关键字
    在自己电脑创建svn服务、导入和导出项目
    开发工具下载地址
    svn操作步骤
    java的反射
    正数|非负数|正整数正小数和0 |金额正则表达式
    springBatch文件批处理
    IE浏览器问题之清除缓存!!!
  • 原文地址:https://www.cnblogs.com/zezhou/p/13986218.html
Copyright © 2011-2022 走看看