如何修改内部模块,或者优先级?
发布于 2年前 作者 clamingo 843 次浏览

大概使用socket.io+网络拥堵的时候会偶发服务器崩溃:

TypeError: Cannot call method 'destroy' of undefined
    at ServerResponse.OutgoingMessage.destroy (http.js:457:15)
    at onclose (stream.js:74:10)
    at EventEmitter.emit (events.js:115:20)
    at ReadStream.destroy (fs.js:1385:12)
    at Object.oncomplete (fs.js:297:15)

google之发现有人碰到同样问题,在0.8.14仍然存在,解决方案是修改http.js模块。之前没干过这事,起先想把http源码拷出修改后再引用,但是如socket.io模块中大量引用系统http模块,全修改不爽,所以想问如题,或者其他修复方式。 是不是只有重新编译node.exe?

2 回复

用这个,即使抛出异常了也不怕

process.on('uncaughtException', function (err) {
  console.log('Caught exception: ' + err);
});

http://nodejs.org/api/process.html#process_event_uncaughtexception

好嘞,我试试

回到顶部