H5W3
当前位置:H5W3 > JavaScript > 正文

【JS】node崩溃后如何自动重启?

当我在Chrome 控制台玩耍的时候,一不小心出错,node进程崩溃
我必须要手动重启node,我该如何让node自动重启,我只是想在控制台快速验证一些代码
下面代码中我故意没有捕获错误,并请求了一个不存在的文件,我希望它出错能快速重启过来.

【JS】node崩溃后如何自动重启?

这是一个基本的服务器例子,使用调试模式架起环境
node --inspect aaa.js
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World!');
}).listen(8080);

回答

最好的玩具 ndb

gtihub: https://github.com/GoogleChro…

优点:

  1. 出错进程不崩溃
  2. 代码自动更新,类似 nodemon和pm2 ,但官方这个使用无重启技术
  3. 代码双向更新, 调试器里面修改后,源文件也被修改了
  4. 附带了终端
  5. 一键刷新环境,就像浏览器刷新一样

图示:

【JS】node崩溃后如何自动重启?

楼上提供了自动重启的方法,我就不多说了。实际上不需要重启,只需不退出即可,具体方法就是捕获“未捕获的异常”:

process.on('uncaughtException', err => {
  console.error(err && err.stack)
});

pm2, forever 等进程管理器了解一下

本地调试nodemon,修改代码自动重启

推荐使用pm2进行管理.

https://www.jianshu.com/p/f64…

可以了解一下forever,十分好用。装好之后将你的项目用forever来启动,即可解决问题

开发阶段 推荐使用 nodemon

Nodemon 介绍

生产阶段 推荐使用 pm2

pm2 介绍

测试阶段 可以用 pm2 或者 forever (不怕折腾)

forever 介绍

linux、Mac开发环境:

  1. supervisor、nodemon等守护进程工具,可以用于调试
  2. pm2进程监控工具,可以用于发布项目

本文地址:H5W3 » 【JS】node崩溃后如何自动重启?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址