2017-04-07 1 views
1

내 응용 프로그램은 Socket.io를 기반으로 채팅 기능을 제공합니다.웹 페이지 속도가 느린 너무 많은 EIO socket.io 폴링 호출

내 응용 프로그램은 빨간 모자 공개 교대에 배포됩니다.

나는 계속해서 숫자가 큰 http://url/socket.io/?EIO=3&transport=polling&t=Lj8huKr&sid=y1OB9OBmdSd_Ma4nAAFG 개의 요청을 받고 있습니다.

그리고 아마도 내 웹 페이지의로드가 차단되어 내 웹 페이지가 느려지고 있습니다.

인터넷에서 포트가 언급되지 않은 경우이 오류가 표시됩니다. 하지만 내 포트 번호는 빨간 모자 오픈 시프트 구성 페이지로 나타납니다. 다음은

은 socket.io가 내 초기 HTML 페이지 노드 JS 초기 서버 페이지

index.html을

var socket =io(); 

하는 index.js (노드 JS 서버)

을에 intialized 방법의 코드
var app = express(); 
var server = app.listen(process.env.NODE_PORT || 3006, process.env.NODE_IP || 'localhost', function(){ 
    console.log('listening on port 3006'); 
}); 

var io = require('socket.io').listen(server); 

io.on('connection', function(socket) { 
    console.log('a user connected'); 
    socket.on('disconnect', function() { 
     console.log('user disconnected'); 
    }); 
    socket.on('chat message', function(msg) { 
     console.log(msg); 
     io.emit('chat message', msg); 
    }); 

답변

-1

XHR long 폴링은 socket.io 클라이언트의 기본 연결 유형입니다. 초기 연결은 polling으로 시작하므로 항상 http://url/socket.io/?EIO=3&transport=polling URL에 대한 일부 요청이 표시됩니다.

클라이언트는 웹 소켓 연결로 업그레이드를 시도합니다. 업그레이드 할 수없는 클라이언트는 가능한 한 실시간으로 가까이 가기 위해 정기적으로 폴링 상태를 유지합니다. 2 초마다 폴링하는 많은 수의 클라이언트가있는 경우 많은 요청이 표시됩니다.

관련 문제