在Akka有一个主演员是强制性的吗?

时间:2015-02-24 10:35:04

标签: scala akka actor

我正在尝试学习一些关于akka演员(在scala中),我想出了一个我无法找到答案的问题。

你是否需要创建一个主演员并从那里创建一个workerRouter的工人? 或者,您是否可以跳过此步骤直接从Main对象创建具有workerRouter的worker?

如果您需要任何代码,请告诉我,但我基本上都是关注akka的HelloWorld。

1 个答案:

答案 0 :(得分:9)

严格来说:是的。在业务逻辑方面:不。

Akka的演员,是设计师,hierarchical。这意味着,您创建的任何演员都将拥有“父母”/“主人”,如果没有自己定义,那么/user guardian actor

然而,请注意,从Akka的系统角度来看,这种等级关系涉及演员生命周期和儿童监督。 它并不关心如何将演员与您的消息和/或任何自定义生命周期处理联系起来。

因此,从您的应用程序的角度来看,您可以让您的工作者作为同行运行某种共识方案。他们当然会有系统父母(/user,如果你不自己定义一个),但只要你不关心监督 - 如果你刚刚开始学习阿卡,你可能不会 - 一切会很好。

最后,请注意,可以在“工作池”设置中使用许多方案。例如,this article on work pulling可能会为您解决此类问题提供一些灵感。