【问题标题】:node.js pm2 on exit退出时的node.js pm2
【发布时间】:2014-10-02 23:31:53
【问题描述】:

我正在使用 pm2 来运行节点应用程序。我必须在应用程序关闭之前保存数据。这段代码在 shell 中运行良好:

process.on('exit', function(){
    log.debug('exit');
});

process.on('SIGINT', function(){
    log.debug('SIGINT');
});

process.on('uncaughtException', function(){
    log.debug('uncaughtException');
});

当我使用“pm2 stop”停止应用程序时,代码不起作用。我认为 pm2 会杀死进程。

【问题讨论】:

    标签: javascript node.js pm2


    【解决方案1】:

    SIGINT 通常在用户调用关机后触发(例如 Ctrl+C)。假设pm2 正在触发突然 关机,那么SIGINT 将不会被触发。

    相反,您应该收听终止信号SIGTERM,它应该涵盖这两种情况

    process.on('SIGTERM', function() {
        // clean up
    });
    

    【讨论】:

      猜你喜欢
      • 2022-11-11
      • 1970-01-01
      • 1970-01-01
      • 2015-01-29
      • 2020-03-15
      • 1970-01-01
      • 2021-03-28
      • 2018-11-09
      • 2011-10-20
      相关资源
      最近更新 更多