HTTP/2 훑어보고 AWS에서 적용해보기
두줄요약
HTTP/2가 HTTP/1.1의 HOL Blocking, RTT, 헤더 중복 문제를 보완하는 방식을 설명했습니다. AWS CloudFront와 ALB에서의 적용 방법 및 기존 최적화 기법 재검토 사항을 소개합니다.
구조와 흐름
- HTTP/1.1의 순차적 응답에 따른 HOL Blocking, 연결 수립 RTT, 반복 헤더 전송 문제
- HTTP/2의 단일 커넥션 다중 스트림 처리, 바이너리 프레임, HPACK 헤더 압축
- Server Push와 스트림 우선순위 기반 리소스 전송 제어
해결 방법
- CloudFront 배포 설정의 지원 HTTP 버전을 HTTP/2로 변경
- Elastic Beanstalk 웹 서버 환경의 Application Load Balancer에 HTTPS 리스너 추가
- 클라이언트와 로드 밸런서 구간만 HTTP/2로 설정하고 내부 웹 서버 구간은 HTTP/1 유지
성능/운영 포인트
- 이미지 30개 페이지 비교에서 DomContentLoaded 14.65초에서 11.45초로 약 20% 단축
- HTTP/2 미지원 환경 요청에 대한 HTTP/1.1 응답 호환
- 서버 간 사설 네트워크의 짧은 RTT와 연결 제약 완화로 내부 구간 HTTP/2 필요성 감소
주의할 점
- 이미지 스프라이트의 불필요한 CSS 연산 및 캐싱 어려움 가능성
- 도메인 샤딩의 다중 연결 전략에 따른 HTTP/2 성능 저하 가능성
- HTTP/1 최적화 기법 재검토와 Server Push·스트림 우선순위 활용 필요






