我正在尝试构建的工作流程是这样的,将许多相关任务排入队列以并行运行(至少数千个)一旦所有相关作业完成,就会执行最终作业
我不知道如何执行那个单一的最终确定工作。我希望在所有相关任务完成后尽快执行此任务。但是,我唯一能想到的就是使用单线程轮询作业来检查所有任务是否已完成,并将完成任务排入队列。
我查看了管道文档https://code.google.com/p/appengine-pipeline/并查看了http://www.google.com/events/io/2010/sessions/high-throughput -data-pipelines-appengine.html起初看起来很有希望,但无法从中找到好的解决方案。
在考虑了更多管道库之后,我想我看到了一种模式,可以用来将等待的作业扩展到我想要的高数量。
有一个批处理入队作业,此作业一次将一批任务入队,然后启动另一个批处理入队作业,该作业等待入队的批处理完成。最后,如果没有更多批次要执行,则运行聚合器作业。
这是用于大量等待工作的模式吗?