taskflow
运维系统有这样一个需求 简述一下就是: 执行任务a后执行b和
运维系统有这样一个需求 简述一下就是: 执行任务A后执行B和C.B和C都执行完毕后执行任务D. 可是后来在涉及到任务链回退的时候遇到了一些麻烦 而且有任务竞争的问题. 开始反思是不是celery在任务流这种场景下是不是不合适 是不是有更好的实现. 刚开始想到自己实现一个 大概会用到python的自省 图(有序无环图)等 但是工作量有些大了(其实是有些胆怯 怕写不好哈哈) 最后决定现在找一下有没有现成的轮子. taskflow是openstack下的一个工作流引擎 支持线性流 无序流 图流 而且任务定义和回退方式也很灵活方便. 这里并不是说celery和taskflow哪个更好 而是相比下 celery在分布式队列场景是很适合的 而任务流的场景中 taskflow看上去更胜一筹 当然2种工具结合起来用也是可以的.