2016-06-24 5 views
0

CloudFlare를 사용하여 REST API를 구현하고 있습니다. Node.JS에 socket.io로 구현 된 몇 가지 알림을 추가해야합니다. socket.io가 라이브 연결을 사용하여 클라이언트를 업데이트하면 서버 - 클라이언트간에 연결이 설정되기 때문에 작동하지만 socket.io가 폴링을 수행하면 어떻게됩니까? CloudFlare는 항상 각 클라이언트마다 동일한 서버를 사용합니까?CloudFlare 및 socket.io

답변

2

웹 소켓은 IETF에서 RFC 6455으로 표준화되어 있으므로 폴링 동작을 피하고 대신 서버에서 클라이언트로 양방향 연결을 직접 유지할 수 있습니다.

기존 스택 (Node.js, Socket.io 및 CloudFlare)이 폴링 동작을 지원하지만; Socket.io는 웹 소켓과 CloudFlare now supports WebSockets을 사용할 수 있습니다!

웹 소켓은 전통적인 폴링을 사용하지 않고 대신 전이중 통신 프로토콜의 역할을합니다. 가능한 경우 Socket.ioseek to use WebSockets when it can이되지만 가능한 경우 폴링으로 폴백합니다.

그래서 염두에 두어야 할 것은 무엇입니까? WebSocket을 사용할 때는 CloudFlare에서 사용할 수있는 포트를 사용해야합니다.

For requests made via HTTP/WS: 

80 
8080 
8880 
2052 
2082 
2086 
2095 

For requests made via HTTPS/WSS: 

443 
2053 
2083 
2087 
2096 
8443 

using CloudFlare with WebSockets에 대한 질문이 있습니다.