scala - 平面 Actor 树

标签 scala akka actor

child Actor 会不会太多?例如,如果我有一个有 10000 个 child Actor 的 Actor ,与每个有 1000 个 child Actor 的 10 个 Actor 相比,这会影响整体性能吗?

-= 为什么我问=-
我遇到一个问题,必须在某个时间点生成一个 Actor 并尝试稍后访问。可能有成千上万这样的 Actor 在等待。一旦稍后访问, Actor 应该执行计算繁重的任务,然后死亡。这些 Actor 在人生的任何阶段都不需要与 parent 交谈(除非 parent 应该对 child 可能的失败做出适当的 react )。

我没有与 Actor 合作的经验,似乎很容易让他们都与一个 parent 在一起,所以我可以通过在路径中替换它的名称来访问任何 child ,而不需要制作(actor_id =>路径)查找映射或任何东西。我担心这个设计决策本身是否会减慢单亲 Actor 的速度或使其变得更加脆弱?

最佳答案

问题是“表现什么”?

让我们把问题转移到现实生活中:

会有太多 child 这样的事情吗?例如,如果我有一个有 10000 个 child 的 friend ,与每个有 1000 个 child 的 10 个 friend 相比,这会影响整体性能吗?

“显然”,权衡是你拥有的 child 越多,你照顾每个 child 的时间就越少,而且,如果你死了,更多的 child 将成为孤儿。

关于scala - 平面 Actor 树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22416191/

相关文章:

java - 带有替代项的重载方法值表

multithreading - 配置 Fork 加入线程池

Akka-http:如何从请求中获取自定义 header ?

java - 管理 Akka Actor 系统生命周期

scala - 多个特质 mixin 和 Actor 的问题

scala - Scala 中 akka actor 系统内的全局变量

java - Scala 中的加泰罗尼亚数递归

Scala 替代无限循环

playframework - Play 2 个线程池 : default pool VS Akka Pool with Java

Scala/Akka 套接字服务器 IterateeRef 语法