1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 Celery-Task-Tigger v0.4发布, 可控制定时调度任务的小插件 下载

Discussion in '软件资讯' started by 漂亮的石头, 2017-05-13.

  1. 漂亮的石头

    漂亮的石头 版主 Staff Member

    Joined:
    2012-02-10
    Messages:
    487,979
    Likes Received:
    47
    celery-task-tigger 0.4正式发布。它是基于Celery的一种可自由触发定时调度任务的小插件,通俗地说,如果有一天我们希望自己来去控制何时开始跑定时任务并且何时去停止,比如当点击某个按钮或者被某个动作触发后开始运行定时任务时,那么这个问题就稍微有点复杂......所以在这里celery-task-tigger这个小插件或许能助你一臂之力。

    本次更新:


    1. 新增一种更灵活的定义任务间隔时间的方式


    2. 兼容最新版本celery 4.x

    例如,本次版本前,在定义定时任务间隔时间,你只能通过装饰器@tigger_task中定义countdown参数:


    @app.task(bind=True)
    @tigger_task(max_times='forever', countdown=3) # each execute in 3 seconds
    def add(self, x, y):
    return x + y

    升级版本后,你还可以通过以下方式进行定义,这样能更好的让外部接口动态的控制间隔时间:

    @app.task(bind=True)
    @tigger_task(max_times='forever')
    def add(self, x, y, countdown=5): # you also can define formal parameter in task
    return x + y

    你也可以通过celery调用task的时候去定义该参数:

    # add.apply_async((1,2),{'countdown': 2} countdown=4) ## after 4 seconds, begin start task and interval in 2 seconds

    如果有兴趣,详情可以关注该项目的最新GitHub
    Celery-Task-Tigger v0.4发布, 可控制定时调度任务的小插件下载地址
     
Loading...