2010-11-03 120 views
12

我的很多node.js进程都因ECONNRESET错误而崩溃。这里是我可以看到的输出:如何处理ECONNRESET,通过对等方重置连接

node.js:50 
    throw e; 
    ^
Error: ECONNRESET, Connection reset by peer 
    at Client._readImpl (net:320:14) 
    at IOWatcher.callback (net:470:24) 
    at node.js:607:9 

有没有人知道如何处理这个?这不是一个非常有用的堆栈跟踪,所以我不知道它在哪里发生。我应该用try/catch块通过http来包装对远程源的所有访问吗?或者,还有更好的方法?

一般来说,我不在乎这是否发生,或者是否有任务因此而无法完成。我所关心的是这个过程应该摆脱它,并且开始下一个任务。

+0

你的模块依赖关系是什么? – 2010-11-04 01:10:09

回答

15

您需要附加到您的套接字的错误事件。如果你不这样做,那么默认的动作是在发生错误时抛出异常。

socket.on('error', function (exc) { 
    sys.log("ignoring exception: " + exc); 
}); 
+1

这是驻留在服务器端吗? .on(“connect”,函数(socket){//在这里听到err})里面 – Samson 2013-06-22 10:50:31

+0

最后!你不知道找到这个需要多长时间。 – sidonaldson 2013-10-22 12:04:29

相关问题