我有一个快速应用程序,在负载下运行了一段时间后,它可以预料地使CPU峰值。我想每N分钟主动重启一次,以免出现峰值。它当前在forever
下运行,但是我可以使用pm2
或其他一些进程管理器。是否有任何可以定期重启的流程管理器?我如何才能以最少的附加结构完成此任务?
答案 0 :(得分:1)
您可以使用PM2通过以下代码以编程方式进行操作。
var pm2 = require('pm2');
pm2.connect(function(err) {
if (err) throw err;
setTimeout(function worker() {
console.log("Restarting app...");
pm2.restart('app', function() {});
setTimeout(worker, NUM_MILLI_SECONDS);
}, NUM_MILLI_SECONDS);
});
这将在给定的毫秒数内重新启动它。您还可以使用一个CRON库。