Ala*_*blo 5 execution-time node.js
我为用户提供了一种灵活的方法来使用JavaScript转换数据,在服务器端使用Node.js执行.使用该设计,需要考虑3个问题:
安全性:我使用沙箱解决了安全问题,以避免使用本机Node.js库.
资源:我们可以使用v8选项轻松设置最大内存使用量--max_executable_size.关于CPU使用率,我将看到如何使用cpulimit或管理它renice,现在并不重要.
时间:我需要限制我的脚本的执行时间,以避免它们作为hangry zombies运行.在这里,我陷入困境.
我尝试过类似的东西:
node -e '
setTimeout(function() {
console.log("timeout");
process.exit;
}, 5000);
console.log("begin");
while (1);
'
Run Code Online (Sandbox Code Playgroud)
但是这段代码只显示"开始",似乎我的超时从未被调用过.任何的想法 ?
你可能想看看tripwire(https://github.com/tjanczuk/tripwire).它是一个可以杀死失控节点脚本的模块,您可以设置超时.它是一个本机节点模块,因此这是一件需要考虑的事情,但它适用于Mac,Windows和Linux.
| 归档时间: |
|
| 查看次数: |
6855 次 |
| 最近记录: |