tornado+apscheduler定时任务

3,809次阅读
没有评论

tornado+apscheduler定时任务

好久没有更新了,工作忙网站都长草了,最近这两天搞一个调度任务,定时从HIVE抽数,使用tornado写个服务实现类似的功能。使用自带的间隔回调函数在发送请求没办法达到异步的效果,但是也不想在外部设置cron热痱任务,最后的目的就是将这些柔到一个代码里面,所以才有了这篇文章,下面给出的是示例

使用apscheduler定时任务,可以使用interval任务+cron任务,interval定时更新cron配置信息,cron则实现作业计划。

通常用法

from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()

def my_job():
    print 'hello world'

# 使用修饰器

@sched.scheduled_job('cron', id='my_job_id', second=10)
def hello():
     print "hello decorate"

# 轮循

sched.add_job(my_job, 'interval', seconds=5)

# 定时计划

sched.add_job(my_job, 'cron', second=5, minute=1, hour=12, day_of_week=2)
sched.start()

在tarnado中用法

import tornado
from apscheduler.schedulers.tornado import TornadoScheduler
sched = TornadoScheduler()

def my_job():
    print sched.get_jobs()

sched.add_job(my_job, 'interval', seconds=5, id="1")
sched.start()
tornado.ioloop.IOLoop.instance().start()
admin
版权声明:本站原创文章,由admin2018-11-22发表,共计794字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)