我目前正在使用Phean秸秆(beanstalkd)来使用多个工人来处理许多工作。我想知道是否有一种通用的方法来确定是否所有的作业都完成了,因为工人是异步运行的。
我考虑在上一次发布的作业中添加一个“已完成”标志,并使用工作人员检查该标志。问题是,最后一份工作并不总是工人们完成的最后一份工作。工人们可能会被挂断、撞车等。
发布于 2012-04-10 11:29:53
如果您想知道它们什么时候都完成了,您将需要每个作业标记它的完成,并等到所有标志都设置为完成为止。正如您已经指出的,在多个工人中,一组工作的完成顺序没有保证。
该工作是否可以作为单个任务排队,而不是多个任务,以便简单地等待单个任务完成?
也许你也应该考虑一下是否需要知道这些工作什么时候完成。例如,对于图像处理,可以显示占位符图像,直到实际图像准备就绪为止。如果您真的需要等待它们全部完成,那么它们可能不适合异步工作队列。
为了得到更好的答案,你可能需要详细说明你的问题,或者提供一个更具体的例子。
干杯!保罗
https://stackoverflow.com/questions/10017519
复制相似问题