반응형
WebSocket 이란?
서버와 클라이언트 간에 Connection 을 계속 유지하면서 양방향 통신 (Duplex) 을 하여 클라이언트의 요청이 없어도 데이터를 전송할 수 있는 프토로토콜으로 Real-time web application 구현을 위해 널리 사용되고 있다.
프로토콜 (Protocol) - 통신 규약
네트워크의 접속 순서, 통신 회선을 이용하여 컴퓨터와 데이터를 주고 받기 위해서 정한 통신 규약
HTTP (Hyper Text Transfer Protocol) 은 프로토콜의 한 종류로서 웹 서버와 브라우저 사이에 문서를 전송하는데 사용된다.
Http vs WebSocket
공통점
클라이언트가 애플리케이션을 사용하기 위해 URL 에 접근하여 HTTP method, header, entity 등의 요청을 하고 서버는 그에 따른 응답을 통해 통신이 이루어진다.
차이점
WebSocket 장단점
장점
1. 양방향 통신
클라이언트와 서버는 지속적으로 연결되어 있는 TCP 를 통해 양방향 통신을 한다.
Ajax 와는 다르게 서버에서 클라이언트로 요청을 보낼 수 있다.
2. 실시간 통신 가능
단점
1. 지원하지 않는 브라우저가 있을 수 있다.
2. 서버와 클라이언트는 항상 연결되어 있어야 한다.
한 번 통신하고 연결이 끊키는 HTTP 와는 달리 Stateful (상태 유지) 해야한다.
WebSocket 순서
1. TCP/IP 접속 요청
2. TCP/IP 접속 수락
3. WebSocket 열기, Handshake 요청
4. WebSocket 열기, Handshake 수락
5. WebSocket 데이터 송, 수신
반응형
'개발 ━━━━━ > Dev' 카테고리의 다른 글
[Docker] MySQL 컨테이너를 이미지화 하여 Docker Hub 에 push 하기 (0) | 2023.12.04 |
---|---|
Github Actions 를 이용하여 AWS EC2 에 SpringBoot 애플리케이션 CI/CD 구축 (0) | 2023.09.27 |
Github Actions (0) | 2023.09.25 |
[SQL] SQL 문법 - ➁ (0) | 2023.08.05 |
[SQL] SQL 문법 - ➀ (1) | 2023.08.04 |