jxcore任务vs nodejs clustur
为提供multithreading节点提供clustur
。 JXCore
( node.js
fork)也声称他们提供了multithreading。 但是如果它已经存在于节点中(如clustur
)那么JXcore
在multithreading方面有什么额外的优势呢?
首先, jxcore
不是node.js
分支,而是“具有附加function的node.js分发”。 就像你不叫debian一个linux fork。 Debian可以运行不同的内核,即freebsd
或hurd
, jxcore
可以同时使用v8(如node.js)和spidermonkey
(来自mozilla)作为JavaScript引擎。
jxcore
是在node.js不提供multithreading时创build的,主要目标之一是添加它。 你可以在http://jxcore.com/docs/jxcore-feature-multitasking.htmlfind它的mt机制的官方描述。 在我看来,从命令行启动mt,没有任何代码的变化,可能是有用的。
Node.js集群和JXcoremultithreading之间的主要区别在于集群使用多个独立的进程 ,而JXcore线程实际上是在同一个进程下运行的独立实例 。 这允许线程之间的通信比集群之间的通信稍快。 另外用JXcore IMHO编写一个multithreading任务的代码要容易得多。
其中一个早期的基准testing可以在这里find: JXcore vs Vert.x与Node.JS集群