매번 TCP 연결을 하는 것이 아니라 한번 TCP를 초기화 한 이후에 keep-alive라는 옵션으로 여러 개의 파일을 송수신 할 수 있게 바뀌었다.
하지만 문서 안에 포함된 다수의 리소스를 처리하려면 요청할 리소스 개수에 비례해서 대기 시간이 길어지는 단점이 있다.
keep-alive
HTTP 프로토콜에서 클라이언트와 서버 간 여러 요청을 단일 TCP 연결을 재사용하는 방식으로 처리하는 기능으로
클라이언트와 서버는 각 요청과 응답에 대해 매번 새로운 TCP 연결을 생성하고 닫아야 합니다. 이 방식은 네트워크 리소스가 비효율적으로 사용됩니다. 반면 keep-alive를 사용하면 단일 TCP 연결에서 여러 요청과 응답이 이루어지기 때문에 네트워크 지연 시간이 줄어들고 웹 사이트 성능이 좋아집니다.
이러한 장점들도 있지만 단점들도 있다.
HOL Blocking
Head Of Line Blocking으로 줄의 앞이 막히는 것으로. 네트워크에서 같은 큐에 있는 패킷이 그 첫째 패킷에 의해 지연될때 발생하는 성능저하 현상을 말한다.
무거운 헤더 구조
헤더에 쿠키등 많은 메타 데이터가 들어있고 압축이 되지않아 무겁고 하나의 TCP 세션에 여러 http 요청을 보낼수 있지만 이때 매번 중복 헤더 값을 보내 비효율 적이다.