从nodejs使用akka的最佳方法是什么?

时间:2015-06-06 21:51:17

标签: node.js scala express akka

我有一个应用程序前端,在angularjs + nodejs + express + socket.io上实现。这也是单独服务中的一项功能。这项服务是在akka上写的。

以下是整个通信管道的外观:

[用户输入值] - > [angularjs获取值并通过socket.io将其发送到nodejs服务器] - > [nodejs接收该值并将其引导至akka] - > [akka执行一些计算并返回回复] - > [nodejs接收响应并将其引导至angularapp]

一种可能的解决方案是引入MQ中间件并将其用于交互,但这种"消息驱动方法"对于看起来像RPC调用的东西来说,这似乎是一种开销。在nodejs和akka之间建立这种类型的通信的最佳方法是什么?

2 个答案:

答案 0 :(得分:8)

https://stackoverflow.com/a/25575634/919426本身开始,您可以从Node到Akka服务进行RESTful调用。支持流水线操作,因此您可以提高效率。在Akka HTTP服务器流程中,您可以使用ask模式从演员那里获取计算出的值。

答案 1 :(得分:5)

最简单的方法是跳过node.js / socket.io的消息传递层,而不是直接使用spray.io上的websockets。 Typesafe有一个激活器模板,仅用于指向akka actor的websockets场景:Spray and Websocket interfaces to actors

否则你会看到某种RPC中间件,可能是ThriftZeroMQ