gpt4 book ai didi

node.js - 为什么 NodeJS execSync() 在执行自定义脚本时太慢

转载 作者:搜寻专家 更新时间:2023-11-01 00:00:34 24 4
gpt4 key购买 nike

我正在处理服务器到服务器的通信,该通信必须在客户端上同步。我最终使用了 child_process.execSync()

现在的问题是 execSync() 执行 node.js 自定义脚本文件的速度太慢,例如:

// main.js
var res = execSync('node --version');
// TIME: 8 ms

尽管有一个自定义 Node 脚本,它只将 Node 版本打印到标准输出,例如:

// script.js:
process.stdout.write(process.version);
process.exit();

然后:

// main.js
var res = execSync('node script.js');
// TIME: 135 ms !!!

这几乎是 16 倍。我错过了什么?

最佳答案

我无法在我的系统上重现您的号码。这是在我的 Macbook Pro 家用电脑上运行的。为 main1.js 调用第一个 main.js,为 main2.js 调用第二个 main.js,只需在 main1 和 main2 的顶部添加 var execSync = require('child_process').execSync;

$ 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

我觉得这些数字不错。

关于node.js - 为什么 NodeJS execSync() 在执行自定义脚本时太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35452111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com