node.js进程何时意外死亡?



我有一个node.js + express web应用程序,我看到在生产中建议有一个进程管理器,以防你的node.js进程死亡。

我的问题是:你的代码中有什么东西可以意外地杀死它,还是只有外部因素可以杀死它?

显然,我有一个错误的概念,在JS中的错误会杀死节点进程,但显然不是这样的

可能导致节点进程死亡的原因有很多。例如,它可能会耗尽内存,它可能会因为JS错误而崩溃,等等。

在生产环境中,您可能希望节点进程在崩溃后重新启动,但是您仍然应该查看它崩溃的原因并纠正问题。

—EDIT—询问JS崩溃示例

我从JS崩溃中发现的最常见的崩溃是从未测试过的db错误代码。假设my_obj不存在。它不会崩溃,直到它到达那一行。

db.query(..., function(err, results){
    if(err){
        console.log("OH NO THERE WAS AN ERROR LOOKING UP " + my_obj);
    } else {
        //handle success
    }
});

最新更新