HTTP의 비연결성과 비상태성
- 비연결성(Connectionless)
: HTTP는 요청과 응답을 한번 주고받으면 바로 연결을 끊어버리는데, 그리고 다음 요청을 하기 위해 다시 연결을 맺어야한다. 이것을 비 연결성이라고 한다.
→ 수천명의 유저가 서비스를 사용하더라도, 동시에 처리해야하는 요청이 줄어든다.(한번 요청을 처리하면 연결을 끊어버리고 자원을 절약)
- 비연결성의 한계
- TCP/IP연결을 계속 새롭게 맺어줘야한다.(3-way handshake 시간 추가)
- 웹 브라우저로 사이트를 요청하면 HTML를 비롯한 수많은 자원들을 불필요하게 계속해서 다운로드 해야한다. ⇒ 현재는 HTTP 지속연결(Persistent Connections)로 문제점을 해결
- 비상태성(Stateless)
: HTTP은 요청과 응답을 교환하는 동안 상태(Status)를 저장하지 않는다. 이전에 보냈던 Request나 Response를 기억하지 못한다. 즉, HTTP 요청은 직전의 요청과 전혀 관련이 없다. 이것을 비상태성이라고 한다.
- 장점
- 스케일 아웃 - 수평 확장에 있어서 유리하다. → 동일한 기능을 수행하는 수많은 서버로 확장이 가능하다.
- 한계
- 웹이 발전하면서 요청과 요청간의 상태가 유지되어야 할 필요가 있어짐 ex) 로그인 → 이를 위해 나타난 것이 쿠키와 세션
- 장점
'네트워크' 카테고리의 다른 글
HTTP 1.1과 HTTP 2.0 (0) | 2024.09.19 |
---|---|
Web Server, Apache, Nginx (0) | 2024.07.30 |
쿠키와 세션 (0) | 2023.09.30 |