我正在编写一个 Akka 应用程序,我想使用 Typsafe 提供的 Akka Cluster 功能。我试图了解 Akka Cluster、Akka Cluster Singleton 和 Akka Cluster Sharding 之间的主要区别。对我来说,他们似乎提供了类似的东西。
在我的场景中,我想要一个集群,它将具有:
- 可以存在于任何机器中的无状态actors(我将拥有一个池)
- 我希望他们生活在特定机器中的无国籍演员
- 可以存在于任何机器中的有状态参与者,但我只需要它们在整个集群中的一个实例,并且能够在参与者死亡时以之前的状态重新启动参与者。
根据我所阅读的内容,我需要 Akka Cluster 作为第一种,Akka Cluster Singleton 用于第二种,Akka Cluster Sharding 用于第三种。我的假设正确吗?如果您知道的话,我正在寻找一些指导以及任何在线示例。