HTTP/2는 SPDY 프로토콜에서 파생된 HTTP/1.X 보다 지연시간을 줄이고 응답시간을 더 빠르게 할 수 있으며 멀티플렉싱, 헤더 압축, 서버 푸시, 요청의 우선순위 처리를 지원하는 프로토콜입니다.

  1. 멀티플렉싱 (Multiplexing):

    https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https://blog.kakaocdn.net/dn/1NU7W/btrkB5oAUYk/mI1ODCLNv0KHY3kjokRGv0/img.png

HTTP/2는 Multiplexed Streams를 이용하여 Connection 한 개로 동시에 여러 개의 메시지를 주고 받을 수 있으며 응답은 순서에 상관없이 Stream으로 주고 받습니다. RTT 시간이 줄어들어 별도의 최적화 과정이나 도메인 샤딩없이 웹 사이트 로드 속도가 빨라집니다. HTTP/1.1의 Connection Keep-Alive, Pipelining이 개선된 것을 알 수 있습니다.

https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https://blog.kakaocdn.net/dn/nN1MG/btrkIjrQxV2/oMCvbYtn8zo8V8QNamVOSK/img.jpg

  1. 헤더 압축 (Header Compression):

  2. 서버 푸시 (Server Push):

https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https://blog.kakaocdn.net/dn/cJMaVo/btrkB4XTkpA/b7BiLHMlTw1GsUqWCk3DCk/img.png

  1. 요청의 우선순위 처리 (Prioritization of Requests):