Node.js的线程和进程链接
js的执行是单线程/nodejs支持多进程
1. 单线程的脆弱
nodejs的单线程中,任何未捕获的错误,都会导致进程退出。
2 捕获异常
2.1 try-catch 捕获错误
2.1.1 代码里都是try-catch
2.1.2 nodejs里面同步代码才能捕获异常,异步代码不能直接使用try-catch
因为event-loop 机制,当执行到异步任务时,try-catch所在位置的调用栈已经清空,当前是异步任务的调用堆栈,所以抛出的任何错误,try-catch都无法捕获
2.2 process.on(‘uncaughtException’,function(err){}) 兜底捕获
3 pm2进程重启