Napa.js是一个基于V8的多线程JavaScript运行时环境,它起初被设计用于在Bing中开发不影响性能的高度迭代服务。随着开发的深入,我们发现Napa.js能有效补足Node.js在CPU-bound任务上的不足,而且拥有在多个V8隔离中执行JavaScript代码并进行相互通信的能力。虽然Napa.js是Node.js的一个模块,但是它也能嵌入没有Node.js依赖的主机进程中。
安装最新的稳定版本:
npm install napajs
在Build Napa.js中有其他一些操作。
var napa = require('napajs');
var zone1 = napa.zone.create('zone1', { workers: 4 });
// Broadcast code to all 4 workers in 'zone1'.
zone1.broadcast('console.log("hello world");');
// Execute an anonymous function in any worker thread in 'zone1'.
zone1.execute(
(text) => text,
['hello napa'])
.then((result) => {
console.log(result.value);
});
更多示例:
多线程JavaScript运行时环境
Node.js兼容的模块,支持NPM
JavaScript线程间的对象传递、对象共享和同步接口
可插拔的日志、标准和内存分配接口
作为一个Node.js的模块部署,支持脚本嵌入