Hypertext Transfer Protocol version 2
HTTP/2는 1999년에 발표된 기존 HTTP/1.1의 성능 한계를 극복하기 위해 구글의 SPDY 프로토콜을 기반으로 2015년에 표준화된 차세대 웹 통신 규약입니다. 웹 페이지 구성 요소가 갈수록 많아지고 복잡해지는 현대 인터넷 환경에서 속도와 효율성을 비약적으로 향상시켰습니다.
| 특징 | HTTP/1.1 | HTTP/2 |
|---|---|---|
| 데이터 형식 | 텍스트 (Text) | 이진법 (Binary) |
| 전송 방식 | 한 번에 하나씩 (순차적) | 멀티플렉싱 (동시 전송) |
| 헤더 중복 | 매 요청마다 중복 전송 | 헤더 압축 (HPACK) |
| 우선순위 | 없음 (먼저 요청한 순서) | 리소스 우선순위 지정 가능 |
기존에는 이미지 10개를 받으려면 10번의 요청을 따로 보내거나 연결을 여러 개 열어야 했습니다(HOL Blocking 문제). HTTP/2는 하나의 연결 안에서 여러 개의 파일을 동시에 주고받을 수 있어 웹사이트 로딩 속도가 획기적으로 빨라집니다.
클라이언트가 요청하지 않아도 서버가 필요할 것으로 예상되는 리소스(예: CSS, JS 파일)를 미리 보내주는 기능입니다. 사용자가 페이지를 요청했을 때 이미 필요한 파일이 도착해 있는 효과를 줍니다.
웹 통신 시 주고받는 메타데이터(헤더) 중 중복되는 내용을 압축하여 전송량을 줄입니다. 모바일 환경처럼 대역폭이 제한적인 상황에서 특히 유리합니다.