비연결성이 필요한 이유❓
클라이언트1이 서버와 연결을 했다. 요청을 보내고 응답을 받았다.
클라이언트2도 연결하고 요청을 보내고 응답을 받았다.
클라이언트3도 연결을 했다....
이런 경우 클라이언트1, 2는 계속 서버에 연결이 되어있다. 그러면서 서버 자원을 지속적으로 소모한다.
HTTP는 기본적으로 연결을 유지하지 않는 모델이다.
일반적으로 초 단위의 이하의 빠른 속도로 응답하고 동시에 처리하는 요청은 매우 적다.
비 연결성으로 하면 서버 자원을 매우 효율적으로 사용할 수 있다.
비 연결성의 한계
1. 비 연결성은 연결을 끊는 것이기 때문에 다시 세션을 맺을라고 하면 3way handshake 시간이 추가된다.
2. 웹 브라우저로 사이트를 요청하면 자바스크립트, css, 추가 이미지등 수 많은 자원이 함께 다운로드된다.
📌 어떻게 해결했는가?
현재는 HTTP 지속연결(Persistent Connections)로 문제 해결
HTTP/2, HTTP/3에서 더 많은 최적화
'WEB' 카테고리의 다른 글
상태유지(Stateful), 무상태(Stateless) (0) | 2024.03.18 |
---|---|
URL와 웹 브라우저 요청 흐름 (0) | 2024.03.12 |
인터넷 네트워크 (2) | 2024.03.11 |