我需要在Akka中一个接一个地批处理2个大文件,并且我试图找出在控制演员中协调它的最佳方法。每个文件中的行可以并行处理,但必须处理第一个文件中的所有行,然后才能处理第二个文件中的任何行。
我想要有以下演员:
我不确定的是,文件演员如何知道所有工作人员何时完成以及TopLevelActor如何知道File1Actor何时完成?
我原以为FileActor只会为给定文件中的行数保留一个计数器,而worker会为每个已处理的行发送一条消息。计数器倒计时后,它会向TopLevelActor发送一条消息。这种方法有什么问题吗?或者实施某种未来处理会更好吗?
答案 0 :(得分:0)
您的解决方案听起来对我不对。另外,我有兴趣检查FSM和/或成为/不成功的功能,以避免在上一个任务未完成时向工作人员提交另一个任务