參考連接: http://blog.coinidea.com/web%E5%BC%80%E5%8F%91/nodejs-1131.htmljavascript
因爲nodejs是非阻塞單進程單線程的,一旦nodejs拋出異常,整個服務就會停掉。服務將會很是不穩定。 解決方法:html
// Express' errorHandler function errorHandler(err, req, res, next) { console.error(err.stack); } app.use(errorHandler);
//Domain捕獲異常 app.use(function(req, res, next) { var domain = createDomain(); domain.on('error', function(err) { // alternative: next(err) console.log(err.stack); res.statusCode = 500; res.end(err.message + '\n'); domain.dispose(); }); domain.enter(); next(); });
forever start app.js
參考連接: http://blog.coinidea.com/web%E5%BC%80%E5%8F%91/nodejs-1131.htmljava