我用Meteor制作的一个项目有一个内存泄漏,在一两个月内缓慢累积。在寻找漏洞的几天之后,我不遗余力地只是添加一个月发生一次的自动重启。是的,这是不好的做法等。
有没有办法简单地从服务器的代码库中重新启动?理想情况下,这也会触发连接客户端的刷新(类似于常规部署更新)。
然后我假设这个命令可以嵌套在一个很好的旧JS超时函数中。
答案 0 :(得分:3)
apendua提供的答案奏效了。这是一个完全黑客攻击,并不是大多数情况下推荐的,但对于长期内存泄漏非常有用。
将其放入启动脚本中:
var restartFrequency = 1000 * 60 * 24; // 1 day (1000 millsec * 60 min * 24 hour)
setTimeout(function(){
process.exit();
}, restartFrequency);