2017-01-24 60 views
1

我正在学习Akka Actor编程(Java),并且正在阅读/观看几个教程。我想我掌握了大部分。识别Akka Actor的多个实例

但是有一件事让我感到困惑,如果这是一个Noob问题,并且抱歉,它是关于有多个Actor的实例,以及如何创建/检索/识别它们?

可以说我有一个Account Actor,并且需要它的多个实例。我是否应该保留“账号”记录和对适当的Actor实例的引用?像一个

Map<String,ActorRef> 

或东西,存储在主管/家长演员?

在启动时,我应该为每个帐户创建一个Actor,还是应该有一个工厂在第一次需要时创建Account Actor?持久性呢?可以说帐户想要加载已经应用的交易清单?

我应该手动对所有这些进行编码,还是在这里有一个更聪明的“最佳实践”,我不明白?

回答

0

就你的情况而言,你可以简单地在管理程序下创建persistent actors,其中persistence id将对应于帐号。因此,帐号可以用作唯一标识符。要从主管上下文中获取角色,您可以使用ActorContext#child方法,或者仅使用ActorContext#actorOf(如果它们不在主管的当前上下文中)从持久性存储中恢复它们。