[英]Debugging in node.js
我建立了一個服務器,該服務器會收到許多請求並響應它們。
在某些情況下,會出現導致服務器崩潰的錯誤:
events.js:72
throw er; // Unhandled 'error' event
^
Error: ENOENT, open '/mnt/ace/0/file'
我有兩個問題:
最佳的實現方式是什么?
您可以聽那種東西,而不會使其崩潰使應用程序崩潰,但這並不總是一個好主意。
process.on('uncaughtException', function(err) {
console.log('Something bad happened');
console.log(err.stack);
});
您是否嘗試檢查ulimit設置? 您可能無法在1000+的負載下打開文件句柄。
考慮這一點的另一種方法是使用域 (如果您使用的是> = 0.8)。 域使您可以更好地控制根據上下文導致錯誤的方式來處理錯誤。
var domain = require('domain').create();
domain.on('error', function(err) {
console.log(err);
});
domain.run(function() {
// Your code that might throw
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.