akka演员有多靠谱

How reliable is akka actor

由于 akka 是构建 actor 模型的工具包,actor 模型是 JVM 内部的对象 运行,创建后的 actor 对象的可靠性如何。考虑到 let it crash 的本质,JVM 中的 actor 对象有多可靠,除非它像使用毒丸或 JVM 关闭那样被明确杀死,否则 actor 不会自行杀死。

编辑:

假设下面是场景,我创建了一个名为 "mysystem" 的自定义演员系统,并在“/用户”A 和 B 下创建了两个演员,其中 A 是 B 的主管。

A <- 主管演员 ( akka://mysystem/user/A ) B <- 演员 ( akka://mysystem/user/A/B )

创建后,假设我没有 Posion Pill 的意图并且 JVM 永远不会崩溃,考虑到这些假设,A 和 B 是否会自行崩溃。

在Akka中,有"supervision"的概念。每个演员都有一个 parent 来监督其 child 个演员。当 actor 因意外异常而失败时,有一个 well-defined life-cycle 进程将重新启动 actor transparently(如果这样配置)。

有关详细信息,请参阅文档中有关 supervision and fault tolerance 的章节。