[NomadCoders Zoom Clone] 01. Chat with WebSockets
01. Chat with WebSockets
1.0. Introduction
1.1. HTTP vs WebSockets
HTTP vs. WebSockets
- 공통점 : 프로토콜 (protocol)
-
차이점
HTTP WebSockets stateless 연결이 성립되면 bi-directional한 연결 클라이언트는 request만, 서버는 response만 메시지를 보낼 때, request, response가 필요하지 않음
Http
-
유저가 request 보내면 서버가 response .. 이걸 반복
ex.
app.get("/", (req, res) => res.render("home")); app.get("/*", (req, res) => res.redirect("/"));
-
특징
- stateless : real-time X
- request-response가 끝나면 Backend가 사용자를 기억하지 못함 (사용자와 Back 사이에 연결 X)
- 서버는 request 받을 때만 response
- 서버로 메시지를 보내고 싶은데 로그인 되어있으면 사용자 정보를 담은 cookie를 보내면 됨
- stateless : real-time X
WebSocket
- 실시간 기능을 가능하게 함
- http와는 다른 프로토콜
- WebSocket 지원하는 서버에 WebSocket 사용해서 연결하려면
wss:// ~
(Secure Web Socket)
- WebSocket 지원하는 서버에 WebSocket 사용해서 연결하려면
- WebSocket과 real-time
- 연결(connection)이 일어날 때 handshake
- handshake가 한 번 성립되면, 연결이 성립
- 연결되었기 때문에 (bi-directional)
- 서버는 사용자를 기억
- request를 기다리지 않고도 서버가 유저에게 메세지를 보낼 수 있음 : request, response의 과정이 필요하지 않음
- backend와 브라우저 뿐만 아니라 두 개의 backend 사이에서도 가능
1.2. WebSockets in NodeJS
Leave a comment