2010-11-03 28 views
12

Rất nhiều quy trình node.js của tôi đang gặp sự cố với lỗi ECONNRESET. Đây là kết quả tôi có thể thấy:Cách xử lý ECONNRESET, Thiết lập lại kết nối theo ngang hàng

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 

Có ai biết cách xử lý việc này không? Nó không phải là một dấu vết stack rất hữu ích vì vậy tôi không có ý tưởng nơi nó đang xảy ra. Tôi có nên chỉ cần bọc bất kỳ và tất cả quyền truy cập vào một nguồn từ xa thông qua http với một khối try/catch? đây có phải là cách tốt hơn không?

Nói chung tôi không quan tâm nếu điều này xảy ra hoặc nếu một số tác vụ không được hoàn thành vì điều này. Những gì tôi quan tâm là quá trình này chỉ nên nhún vai và thực hiện nhiệm vụ tiếp theo.

+0

Phụ thuộc vào mô-đun của bạn là gì? –

Trả lời

15

Bạn cần đính kèm vào lỗi Sự kiện cho ổ cắm của bạn. Nếu bạn không làm như vậy, thì hành động mặc định là ném một ngoại lệ khi xảy ra lỗi.

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

Điều này nằm ở phía máy chủ phải không? Bên trong .on ("connect", function (socket) {// listen err here}) – Samson

+0

Cuối cùng! Bạn không có ý tưởng mất bao lâu để tìm thấy điều này. – sidonaldson

Các vấn đề liên quan