如何将Java与nodejs集成来处理CPU繁重的任务?

我正在尝试为I / O繁重和CPU繁重的任务select合适的Web技术。 NodeJs是完美的处理大负载,它也可以放大。 但是,我坚持与CPU的重要部分。 是否有可能将其他技术(如Java)集成到节点中,以便我将其运行在其他线程中的algorithm,然后在节点中再次使用结果。 有没有现有的解决scheme? 任何其他build议将是非常好的。

您可以使用node-java将 NodeJS与Java进行整合。

正如前面的回答中所提到的,您可以使用node-java,它是一个与Java进行通信的npm模块。 您还可以使用将Node.js封装为Java库的J2V8 ,并使用Java提供Node.js API。

答案是lambda体系结构 。

NodeJs本身很好 – 以轻量级的方式处理快速查询,而不是对数据做任何额外的计算。

CPU繁重的任务可以很容易地委托给基于JVM的专门组件(好吧,最有名的是在JVM上)。 这很好地通过使用消息代理和微服务来实现。

一个基于事件的体系结构,其中nodejs可以连接到像Cassandra或Mongodb这样的数据库,以及像Apache Spark这样的集群计算框架(不一定,但这取决于问题)来处理系统的cpu-heavy部分。 轻量级容器通过为每个组件提供良好的隔离运行时环境,为蛋糕增添了一层糖霜。

这是关于这个问题的结论。 我认为上述build议可以避免在Java或其他基于JVM的解决scheme中将节点封装在CPU繁重的任务中。