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

问题描述 投票:13回答:4

我正在尝试为I / O繁重和CPU繁重的任务选择正确的Web技术。 NodeJs非常适合处理大负载,也可以扩展。但是,我被困在cpu重的部分。是否有可能将另一种技术(例如Java)集成到节点中,这样我就可以在其他线程中运行我的算法,然后在节点中再次使用结果。有没有现成的解决方案?任何其他建议都会非常好。

java node.js integration
4个回答
16
投票

您可以使用qazxsw poi将Node JS与Java集成。


4
投票

如前面的答案所述,您可以使用node-java,这是一个与Java对话的npm模块。您还可以使用node-java将Node.js包装为Java库,并使用Java提供Node.js API。


1
投票

答案是J2V8

NodeJ本身很不错 - 以轻量级方式处理快速查询,而不对数据进行任何额外的计算。

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

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

到目前为止,这是我对这个问题的结论。我认为上面的建议有点消除了在java或其他基于JVM的解决方案下为cpu繁重的任务包装节点的需要。


0
投票

NodeJS基于用c ++编写的v8 javascript引擎。

因此,可以使用c ++为NodeJS编写完全本机插件。查看其中一些资源:

© www.soinside.com 2019 - 2024. All rights reserved.