gpt4 book ai didi

node.js - 如何使用 node.js 设置脚本的最大执行时间?

转载 作者:搜寻专家 更新时间:2023-10-31 22:37:10 24 4
gpt4 key购买 nike

我为我的用户提供了一种使用 JavaScript 转换数据的灵活方式,在服务器端使用 Node.js 执行。使用该设计,需要考虑 3 个问题:

  • 安全:我使用 sandbox 解决了安全问题避免使用 native Node.js 库。

  • 资源:我们可以使用 v8 选项 --max_executable_size 轻松设置最大内存使用量。关于 CPU 使用率,我会看看如何使用 cpulimitrenice 来管理它,现在这并不重要。

  • 时间:我需要限制脚本的执行时间,以避免它们像饥饿的僵尸一样运行。在这里我卡住了。

我试过类似的东西:

 node -e '
setTimeout(function() {
console.log("timeout");
process.exit;
}, 5000);
console.log("begin");
while (1);
'

但是这段代码只显示“开始”,似乎我的超时从未被调用过。有什么想法吗?

最佳答案

你可能想看看 tripwire ( https://github.com/tjanczuk/tripwire )。它是一个可以杀死失控 Node 脚本的模块,您可以设置超时。它是一个本地 Node 模块,所以这是要考虑的一件事,但它适用于 Mac、Windows 和 Linux。

关于node.js - 如何使用 node.js 设置脚本的最大执行时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15176599/

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