2013-09-06 4 views
0

socket.io를 처음 사용했습니다. 그래서 내 socket.io 서버 sometimws 충돌 오류가 내가 작성한 코드와는 그렇게 확신은 아무 일이 없습니다 이유가 어디에 또는 보여 나던이 아래 오류Socket.IO 서버가 끊깁니다.

timers.js:103 
     if (!process.listeners('uncaughtException').length) throw e; 
                   ^
Error: socket hang up 
    at createHangUpError (http.js:1360:15) 
    at ServerResponse.OutgoingMessage._writeRaw (http.js:507:26) 
    at ServerResponse.OutgoingMessage._send (http.js:476:15) 
    at ServerResponse.OutgoingMessage.write (http.js:749:16) 
    at XHRPolling.doWrite (E:\sitesroot\0\node_modules\socket.io\lib\transports\ 
xhr-polling.js:67:17) 
    at XHRPolling.HTTPPolling.write (E:\sitesroot\0\node_modules\socket.io\lib\t 
ransports\http-polling.js:132:8) 
    at XHRPolling.Transport.packet (E:\sitesroot\0\node_modules\socket.io\lib\tr 
ansport.js:515:15) 
    at Object.<anonymous> (E:\sitesroot\0\node_modules\socket.io\lib\transports\ 
http-polling.js:79:12) 
    at Timer.list.ontimeout (timers.js:101:19) 

을 제공. 운송 수단과 뭔가있을 수 있니? 나는 그것에 대해 많은 지식을 갖고 있지 않다. 충돌을 막을 수있는 방법에 대한 제안은 매우 높이 평가 될 것입니다. 이삭 SCHLUETER을 인용 감사

+0

어떤 노드 버전을 사용하고 있습니까? 난 당신이 가장 안정적인 최신 버전을 설치하는 것이 좋습니다 – 1Mayur

+1

이 오류는 주로 노드 v8.20에서 볼 수 있습니다 – 1Mayur

+0

v8.20을 사용하고 있는데, 어느 버전이 가장 안정적입니까? azure node.js sdk를 사용 중이고 v8.21이 azure sdk .....에 어떤 문제가 발생할 수있는 곳을 읽었습니다. azure sdk를 사용할 때 어떤 버전을 사용해야합니까? – Bitsian

답변

4

@miktam이 설명한 바와 같습니다. 이 문제를 해결하려면 코드에 오류 수신기를 추가해야합니다. 응용 프로그램에이 코드를 추가

//Error handler 
process.on('uncaughtException', function (exception) { 
    // handle or ignore error 
    console.log(exception); 
}); 

을 이제까지 그것을 충돌 대신 그것을 CONSOLE.LOG 것이다 오류가 발생합니다. 나는 똑같은 문제가 있었고 이것으로 해결되었다.

+0

Upvoted ... 단순한 해결책 그러나 그것은 내가 여기에 도착할 때까지 매우 실망 스러웠다. .. 고마워! – Sam

1

확인이 issue

는 :

좋은 소식은 더 이상 메모리를 유출하고 있다는 없습니다. 나쁜 소식은 입니다. 실제로 오류 리스너를 개체에 추가해야합니다.

대부분의 앱에서 보통 ECONNRESET은 대략 와 비슷한 것으로 취급 할 수 있습니다. 그 소켓이 이제 닫혀 있기 때문에 실제로 그 소켓 사용을 중단해야합니다. 그러나 어떤 의미에서는 "우아함"이 아니기 때문에 우아한 마감은 아닙니다. . v0.8.20 이전에는 노드가 버퍼를 행복하게 버퍼링하여 소켓을 재설정하여 메모리 폭발을 일으켰습니다. 사망했습니다.

+0

정보 주셔서 감사합니다! – Bitsian