我想用ViewFlow库实现以下用例:
由用户启动的特定流程的进程必须在执行芹菜作业之前在队列中等待.每个用户都有这些进程的队列.根据计划或手动触发,允许队列中的下一个进程继续.
我的流中的节点进入命名队列.应用程序中的其他逻辑为每个队列确定何时允许下一个任务继续进行.选择队列中的下一个任务并调用其激活的done()方法.
示例流可能如下所示:
class MyFlow(Flow):
start = flow.Start(...).Next(queue_wait)
queue_wait = QueueWait("myQueue").Next(job)
job = celery.Job(...).Next(end)
end = flow.End()
Run Code Online (Sandbox Code Playgroud)
实施排队的最佳方法是什么?在上面的例子中,我不知道"QueueWait"应该是什么.
我已经阅读了文档和视图流代码,但是我还不清楚是否可以使用内置的Node和Activation类(如func.Function)来完成,或者如果我需要使用自定义类进行扩展.