웹 소켓과 HTTP의 차이?

개발 블로그·2022년 3월 24일
0

StateFull vs Stateless

1. HTTP는 필요할 때만 연결하고 싶다.

기존 REST API 또는 HTTP 통신은 클라이언트에서 요청을 보내면 서버에서 응답을 주는 단방향 데이터 기술이다.

HTTP는 무상태 프로토콜을 지향한다.(Stateless) 서버와 클라이언트가 서로 연결을 유지하며 데이터를 관리하면 그만한 자원이 들기 때문에 요청이 올 때만 응답을 해주겠다는 것이 HTTP의 방식이다.

서로 필요할 때만 연결하자!
이제는 서버와 클라이언트가 동시에 기억하지 말고 필요한 사람이 요청에 필요한 정보를 담아라!

그렇기 때문에 클라이언트에서 요청을 할 때는 서버가 상대가 누군지 어떤 정보를 원하는지 어떤 상황인지를 전달해줘야 서버에서 응답해줄 수 있다.

2. WebSocket은 실시간으로 확인하고 싶다.

반면 웹 소켓 프로토콜은 실시간 양방향 데이터 기술이다. 기존에는 실시간으로 서버가 업데이트됐는지 확인하려면 http요청을 계속 보내야 했다.(폴링) 브라우저들이 웹 소켓 기술을 지원하면서 우리는 한번만 연결하면 계속 서로 데이터를 보낼 수 있게 되었다.

한번 연결하고 계속 교류하자!

profile
프론트엔드 개발자의 TIL

1개의 댓글

comment-user-thumbnail
2022년 11월 28일

혹시 그림은 어떤책을 참고하신건가요??

답글 달기