1

将 node.js 与 Scala (Java) 集成的最佳方式是什么?

到目前为止,我看到的最简单的方法是使用 Redis PubSub 作为中介,node.js 服务器处理 HTTP 请求并将消息发布到请求通道(通过redis-node-client),并订阅了 Scala 演员(例如Akka Redis PubSub 集成)请求通道并将计算结果发布到响应通道(由节点订阅)。

4

3 回答 3

2

假设您将使用 JSON 作为消息格式,您会在 lift 框架中找到几个非常好的 JSON 实现(您不必将其用作 Web 框架,您可以愉快地从 lift 中挑选组件-实用程序)。

但是,如果您想使用 pubsub/actor 模型(这是一个不错的选择,取决于您的需要),那么您可能会比 Akka 做得更糟,正如您已经建议的那样。

于 2010-10-18T13:12:06.657 回答
2

我已经实现了一个小型概念验证库,用于通过 TCP 直接将 node.js 连接到 Scala Remote Actors(使用 protobuf 作为编组机制)。

于 2010-10-29T11:07:36.457 回答
2

我不认为实现 Scala 远程参与者协议的 node.js 库真的是最好的方法。它可能适用于您当前的应用程序,但如果您需要在组合中添加第三种技术怎么办。如果需要为每种语言/平台编写特殊的支持库,那真的是最好的吗?

集成这些的最佳方法是使用通用技术来集成所有语言的应用程序。更具体地说,一种支持基于参与者的消息发送。幸运的是,AMQP 和 ZeroMQ 都适合这个空间,并且都可以与 node.js 或 scala 一起使用。此外,AMQP 和 ZeroMQ 的库将比任何特殊用途的 node-scala 连接器更频繁地使用,因此错误将得到修复并支持更新的版本。

于 2011-08-28T05:20:08.573 回答