Node.js 为什么在执行自定义脚本时NodeJS execSync()太慢
我正在进行服务器到服务器的通信,该通信必须在客户端上同步。我最终使用了child_process.execSync() 现在的问题是execSync()执行node.js自定义脚本文件的速度太慢,例如:Node.js 为什么在执行自定义脚本时NodeJS execSync()太慢,node.js,exec,child-process,Node.js,Exec,Child Process,我正在进行服务器到服务器的通信,该通信必须在客户端上同步。我最终使用了child_process.execSync() 现在的问题是execSync()执行node.js自定义脚本文件的速度太慢,例如: // main.js var res = execSync('node --version'); // TIME: 8 ms 但是,有一个自定义节点脚本,只将节点版本打印到标准输出,如: // script.js: process.stdout.write(process.version);
// main.js
var res = execSync('node --version');
// TIME: 8 ms
但是,有一个自定义节点脚本,只将节点版本打印到标准输出,如:
// script.js:
process.stdout.write(process.version);
process.exit();
然后:
这几乎是16倍。
我遗漏了什么?我无法在我的系统上重现您的号码。这是在我的MacBookPro家庭电脑上运行的。调用main1.js的第一个main.js和main2.js的第二个main.js,只需添加
var execSync=require('child_process')。execSync代码>位于main1和main2的顶部
$ time node main1.js
v5.3.0
real 0m0.099s
user 0m0.075s
sys 0m0.022s
$ time node script.js
v5.3.0
real 0m0.075s
user 0m0.058s
sys 0m0.015s
$ time node main2.js
v5.3.0
real 0m0.166s
user 0m0.131s
sys 0m0.031s
我觉得这些数字不错
$ time node main1.js
v5.3.0
real 0m0.099s
user 0m0.075s
sys 0m0.022s
$ time node script.js
v5.3.0
real 0m0.075s
user 0m0.058s
sys 0m0.015s
$ time node main2.js
v5.3.0
real 0m0.166s
user 0m0.131s
sys 0m0.031s