zoukankan      html  css  js  c++  java
  • 在蓝鲸标准运维上进行原子开发二

    标准运维本地运行时的注意事项:

    1、启动redis,在终端执行redis-server即可启动。

    2、启动celery。

    下面介绍一下本次原子开发遇到的问题:

    开发场景:执行一个异步任务,并拿到执行状态。难点:异步执行需要时间,状态是实时变化的,所以需要轮询去拿状态。

    轮询的使用要点:

    • need_schedule = True:是否是异步执行,默认为 False
    • interval = StaticIntervalGenerator(5):异步标准插件的轮询策略(5秒钟执行一次)
    • def schedule:轮询逻辑、结果输出

    由 interval 控制调用策略,如 pipeline.core.flow.activity.StaticIntervalGenerator(每隔多少秒轮询一次)、DefaultIntervalGenerator(每次轮询间隔时间是上一次的两倍)。

    具体代码如下:

    拿到结果之后:

    • 使用 self.finish_schedule 结束轮询。
    • 返回 True 表示标准插件执行成功,False 表示执行失败。

    具体代码如下:

    至此,轮询的原子已经完成:每五秒执行一次。

  • 相关阅读:
    判断无向图G是否连通
    图的深度优先搜索与广度优先搜索
    整数变换问题
    按层次遍历二叉树
    交叉链表
    二元查找树转换成一个排序的双向链表
    简单计算器的实现
    二叉树宽度的计算
    BMP文件的读取与显示
    约瑟夫环问题
  • 原文地址:https://www.cnblogs.com/wangyingblock/p/11427838.html
Copyright © 2011-2022 走看看