빠르고 간단하게 HTTP/2를 적용하는 방법!
1999년 HTTP/1.1이 승인된 이후 웹은 급격히 발전하여 복잡한 페이지를 속도 저하 없이 잘 처리하는 새로운 프로토콜이 필요하게 되었다. 그래서 등장한 HTTP/2는 20여 년 만의 메이저 개정 버전으로, 웹 콘텐츠를 불러올 때의 체감 성능이 대폭 개선되었다.
이 책은 웹사이트를 구축하거나 운영하는 사람뿐만 아니라 HTTP/2를 구현하거나 HTTP/2의 동작 방식을 이해하고 싶은 사람을 대상으로 한다. HTTP/2의 이점, 활용 방법 등 HTTP/2에서 달라진 점을 설명한다. 페이스북, 트위터, 구글, 위키백과 등 HTTP/2를 사용하는 사이트가 늘고 있다. 아직 HTTP/2로의 전환을 망설이는 이에게 이 책을 권한다.
기다리고 기다리던 HTTP 개정, 이것이 바로 HTTP/2다!
HTTP가 등장한 지 20년이 넘었다. 초고속 인터넷이 보급되고 UX가 화려해진 덕에 웹 페이지 용량과 요청 수가 크게 증가하였다. 또한 RESTful 방식의 대중화로 HTTP는 클라이언트-서버 사이는 물론 서버끼리의 통신에도 가장 흔히 쓰이는 프로토콜로 성장하였다. 달라진 인터넷 환경을 고려하여 HTTP 기술을 발전시키려는 노력이 계속 되었다. 2012년 구글에서 발전형 네트워크 프로토콜인 SPDY를 발표했고, 이를 참고해 드디어 2015년 HTTP/2가 공개되었다.
실제 웹사이트를 예제로 성능 개선 방법을 살펴보자!
이 책에서는 예제로 페이스북과 야후의 웹 성능을 테스트해보며 단순히 ‘성능 문제가 해결되었다, 개선되었다’고 설명하는 것에서 더 나아가 어떤 경우에 성능이 개선되고 어떤 경우에 성능이 개선되지 않는지를 설명한다. 이미 우리 가까이에서 웹 성능 향상에 기여하고 있는 HTTP/2를 만나보자.
주요 내용
대상 독자
CHAPTER 1 HTTP의 진화
__1.1 HTTP/0.9와 1.0
__1.2 HTTP/1.1
__1.3 HTTP/1.1 이후
__1.4 SPDY
__1.5 HTTP/2
CHAPTER 2 HTTP/2 맛보기
__2.1 서버 구동하기
__2.2 인증서 발급받기
__2.3 첫 번째 HTTP/2 서버 구동하기
__2.4 브라우저 선택하기
CHAPTER 3 웹을 파헤치는 이유와 방법
__3.1 오늘날의 성능 문제
__3.2 웹 성능 기법
__3.3 요약
CHAPTER 4 HTTP/2로의 전환
__4.1 브라우저 지원
__4.2 TLS로의 전환
__4.3 HTTP/1.1 최적화 제거하기
__4.4 서드파티
__4.5 기존 클라이언트의 지원
__4.6 요약
CHAPTER 5 HTTP/2 프로토콜
__5.1 HTTP/2의 계층
__5.2 연결
__5.3 프레임
__5.4 스트림
__5.5 서버 푸시
__5.6 헤더 압축(HPACK)
__5.7 전송 절차
__5.8 요약
CHAPTER 6 HTTP/2 성능
__6.1 클라이언트 구현
__6.2 지연 시간
__6.3 패킷 손실
__6.4 서버 푸시
__6.5 TTFB
__6.6 서드파티
__6.7 HTTP/2 안티패턴
__6.8 실세계의 성능
__6.9 요약
CHAPTER 7 HTTP/2 구현
__7.1 데스크톱 웹 브라우저
__7.2 모바일 브라우저
__7.3 모바일 앱 지원
__7.4 서버, 프락시, 캐시
__7.5 콘텐츠 전송 네트워크
__7.6 요약
CHAPTER 8 HTTP/2 디버깅하기
__8.1 웹 브라우저 개발자 도구
__8.2 웹페이지테스트
__8.3 OpenSSL
__8.4 nghttp2
__8.5 curl
__8.6 h2i
__8.7 와이어샤크
__8.8 요약
CHAPTER 9 다음은 무엇인가
__9.1 TCP인가, UDP인가
__9.2 QUIC
__9.3 TLS 1.3
__9.4 HTTP/3
__9.5 요약
APPENDIX A HTTP/2 프레임
APPENDIX B 도구 참조