java - 识别 Akka Actors 的多个实例

标签 java akka actor

我正在学习 Akka Actor 编程(Java),并且我正在阅读/观看一些教程。我想我掌握了大部分内容。

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

假设我有一个 Account Actor,并且想要它的多个实例。我是否应该保留“帐号”的记录以及对适当 Actor 实例的引用?就像一个

Map<String,ActorRef> 

或者其他东西,存储在Supervisor/Parent Actor中?

启动时,我应该为每个帐户创建一个 Actor,还是应该有一个工厂在第一次需要时创建帐户 Actor?那么坚持呢?假设帐户想要加载已应用的交易列表?

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

最佳答案

就您而言,您可以简单地创建 persistent actors在主管下,持久性 id 将对应于帐号。因此,账号可以作为唯一标识符。要从主管上下文中获取参与者,您可以使用 ActorContext#child方法或只是使用 ActorContext#actorOf 从持久存储中恢复它们如果它们不在主管的当前上下文中。

关于java - 识别 Akka Actors 的多个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41840779/

相关文章:

java - 如何在没有 GPU 的情况下 headless 运行 libGDX,但仍然渲染帧?

java - 在 Akka 类型的 Actor 中配置 Dispatcher

scala - Akka mapTo 与 asInstanceOf

performance - Scala 有状态 Actor ,递归调用比使用 vars 更快?

java - 更新守护进程中的变量 - Java

c# - 如何将该运算符 C# 代码表示为 java?

java:具有颜色分量和直方图间隔的二维数组

java - 为大量并发图配置 akka 调度程序

scala - 邮箱(消息队列)在 Scala Actors 中是如何实现的?

uml - 如何在 draw.io 中重命名 Actor