【问题标题】:When does a node.js process die accidentally?node.js 进程何时会意外死亡?
【发布时间】:2015-10-07 11:34:27
【问题描述】:

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

我的问题是:您的代码中是否有某些东西可以意外杀死它,还是只有外部因素可以杀死它?

显然,我有一个错误的想法,即 JS 中的错误会杀死节点进程,但显然情况并非如此。

【问题讨论】:

    标签: javascript node.js express process


    【解决方案1】:

    有很多事情会导致您的节点进程死亡。例如它可能会耗尽内存,它可能会因 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
        }
    });
    

    【讨论】:

    • 能否请您给我一个 JS 代码示例,该示例会生成一个会终止进程的错误?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多