为什么Akka适合扩展“向上”和“向外”?

时间:2014-05-12 16:03:27

标签: scala akka scaling

如果你谷歌" Akka做什么",你得到的典型销售宣传就是它可以帮助你的计划扩展" up"和/或缩放" out"。但就像流行语" cloud "没有解释构成云服务的虚拟化技术,我看到" 扩展/扩展"同样含糊不清的流行语可能不会给阿卡带来真正的正义。

因此,我们说我已经拥有一个包含100种不同类型任务的批处理系统。任务1 - 100全天开始,做他们的事情,无论他们做什么。阿卡如何帮助我批量系统规模" up"?它如何帮助我的系统扩展" out"?

1 个答案:

答案 0 :(得分:5)

它可以“缩小”,因为它允许您设计和组织服务器群集。基于消息传递,它几乎是现实世界的一对一表示(通过网络连接并相互发送消息的机器)。这里没有什么神奇之处,只是框架的范例可以更容易地推断出你的基础设施。

它可以“向上扩展”,因为如果您购买更好的硬件,它将透明地利用新添加的内核/ cpus,而无需您更改任何内容。

(当谈到Typesafe堆栈时,习惯了流行语!:))

首次评论后编辑: 您可以按照自己的方式组织群集:)

按类型/责任划分似乎是一个不错的选择。您可以将VM1与Task1Actor实例配合使用,将VM2与Task2Actor实例配合使用,如果您注意到任务1是瓶颈,则启动VM1-bis以添加更多实例。

由于Akka抽象了发送/接收消息的整个过程,因此您可以在同一台计算机上安装多个JVM,在同一台物理计算机上安装多个虚拟机,使用多台实际计算机,多台具有多个JVM的实际计算机。你明白了。

对于Typesafe堆栈:http://typesafe.com/platform