NodeJS 服务器因错误而停止

Tra*_*ama 5 node.js google-speech-api

我对 NodeJS 很陌生。我正在为我的网络应用程序开发基于实时流媒体的语音到文本。它运作良好,但问题是

有时,Nodejs 会抛出“请求超时”错误,并且 http 服务器已停止。然后我需要再次手动重新运行程序(使用命令node app.js

我在这里使用了这个例子。

屏幕截图是贝洛请帮忙。并提前致谢。

在此输入图像描述

tas*_*ori 7

您始终可以拥有一个全局错误处理程序,这样您的项目就不会失败,并且您还可以采取适当的操作:

process.on
(
    'uncaughtException',
    function (err)
    {
        console.log(err)
        var stack = err.stack;
        //you can also notify the err/stack to support via email or other APIs
    }
);
Run Code Online (Sandbox Code Playgroud)


Ulr*_*hou 5

您首先需要了解try {} catch(ex){}例外情况。您还可以使用pm2,它可以在崩溃时处理自动启动。使用 pm2 时,请使用--max-memory-restart选项,否则应用程序可能会无限期地重新启动并会减慢您的服务器速度。该选项可以帮助您指定自动重新启动可以消耗的内存量。

安装pm2

npm install -g pm2
//or
yarn global add pm2
Run Code Online (Sandbox Code Playgroud)

运行应用程序

pm2 start app.js --max-memory-restart 100 --name node-speech 
Run Code Online (Sandbox Code Playgroud)

存储库自述文件中甚至建议使用 pm2