在akka中制造太多演员是不是很糟糕?

时间:2013-02-22 16:27:28

标签: java akka

我有一个图形数据结构,我在图形中有顶点。没有顶点大约20K。现在我想为每个节点创建一个单独的actor。这是因为我想在节点之间执行一些聚合。

有一个主工作者在顶点读取并向工作人员发送消息。这个工作者比一些复杂的任务.Hit db and stuff。

创造这么多演员是否可以?

如果是,可以在一个4 gb ram的盒子上支持多少个演员?

1 个答案:

答案 0 :(得分:4)

一个Akka Actor占用大约400-500字节,所以理论上你应该能够在4GB的堆上容纳大约850万,但总有其他东西占用堆,你肯定想确保你有可用的内存用于消息和不必让GC一直运行。

我的建议是你只创建一个顶级演员(system.actorOf),理想情况下你将孩子们分散开来,这样树不是超级平坦的(1个父母20k的孩子很平坦)但是你可以开始那个。

干杯, √