장바구니 담기 close

장바구니에 상품을 담았습니다.

HTTP/2 in Action

HTTP/2 in Action

  • 배리폴라드
  • |
  • 에이콘출판
  • |
  • 2020-08-31 출간
  • |
  • 592페이지
  • |
  • 188 X 235 X 28 mm
  • |
  • ISBN 9791161754475
판매가

40,000원

즉시할인가

36,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
36,000

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




★ 이 책에서 다루는 내용 ★

■ 웹 개발자를 위한 HTTP/2
■ 업그레이드와 문제 해결법
■ 예제와 사례 연구
■ QUIC과 HTTP/3

★ 이 책의 대상 독자 ★

웹 개발자, 웹사이트 관리자, 인터넷 기술의 동작 방식을 이해하는 데 관심이 있는 사람을 대상으로 작성됐다. 이 책은 HTTP/2와 그에 관련된 모든 세부사항을 완전히 다루는 것을 목표로 한다. HTTP/2에 대한 블로그 게시물이 많지만, 대부분은 특정한 주제에 대한 고수준 혹은 세부 수준만을 다루고 있다. 이 책은 프로토콜 전체를 포함해 그와 관련된 많은 복잡성을 다루는 것을 목표로 한다. 이는 여러분이 더 읽어 보려는 사양이나 특정한 블로그 게시물을 읽고 이해할 수 있게 도와줄 것이다. HTTP/2는 기본적으로 성능을 향상시키기 위해 만들어졌으므로 웹 성능 최적화에 관심이 있는 누구나 유용한 이해와 통찰력을 얻을 수 있다. 또한 이 책은 추가로 읽어 볼 수 있는 많은 참고 문헌을 포함한다.

★ 이 책의 구성 ★

1장, ‘웹 기술과 HTTP’는 이 책을 이해하는 데 필요한 배경 지식을 제공한다. 인터넷에 대한 기본 지식만 있는 사람도 이해할 수 있을 것이다.
2장, ‘HTTP/2를 향한 여정’은 HTTP/1.1의 문제와 HTTP/2가 필요한 이유를 살펴본다.
3장, ‘HTTP/2로 업그레이드’는 웹사이트에 HTTP/2를 활성화하는 업그레이드 옵션과 이 과정에 관련된 몇 가지 복잡한 사항을 논한다. 이 장의 내용은 유명한 웹 서버 Apache, nginx, IIS에 대한 설치 지시를 제공하는 부록에서 보충한다.
4장, ‘HTTP/2 프로토콜 기초’는 HTTP/2 프로토콜의 기초, HTTP/2 연결 설정 방법과 HTTP/2 프레임의 기본 형식을 설명한다.
5장, ‘HTTP/2 푸시의 구현’은 프로토콜의 새로운 부분으로 웹사이트 소유자가 브라우저가 요청하지 않은 리소스를 선행적으로 보낼 수 있게 허용하는 HTTP/2 푸시를 다룬다.
6장, ‘HTTP/2 최적화’는 HTTP/2가 웹 개발 관행에 의미하는 바를 살펴본다.
7장, ‘고급 HTTP/2 개념’은 HTTP/2 사양의 상태, 흐름 제어, 우선 순위 등 나머지 부분을 다루고 구현에서 HTTP/2 적합성의 차이를 살펴보겠다.
8장, ‘HPACK 헤더 압축’은 HTTP/2의 HTTP 헤더 압축에 사용되는 HPACK 프로토콜을 자세히 살펴본다.
9장, ‘TCP, QUIC, HTTP/3’는 TCP, QUIC, HTTP/3를 살펴본다. 기술은 결코 잠들지 않으며, 이제 HTTP/2를 사용할 수 있으므로 개발자들은 벌써 HTTP/2를 개선할 방법을 찾고 있다. 이 장은 HTTP/2가 풀지 못한 비효율성과 그것들이 후임자인 HTTP/3에서 어떻게 개선될 수 있을지를 논한다.
10장, ‘HTTP가 나아가는 방향’은 HTTP/2 표준화 과정 중 제기된 문제에 대한 반성과 이러한 문제가 실제 문제가 된 것으로 증명됐지 여부를 포함해 HTTP/3 이후 HTTP를 개선할 수 있는 다른 방법을 살펴본다.

★ 옮긴이의 말 ★

웹 서비스를 떼어놓고 우리 삶을 생각하기 어려운 세상이 됐습니다. 그런 만큼 웹을 이루는 핵심 요소인 HTTP를 이해하는 것은 어떤 입장으로든 웹 서비스를 이해하고 개발하는 데 꼭 필요합니다.
이 책은 HTTP/2가 필요해진 이유와 HTTP/2로 진화하기까지의 과정, 최적화 기법을 적용할 때 알아야 하는 것들, 그리고 더 깊이 있게 알고 싶어하는 사람을 위해 HTTP/2 사양의 상세한 정보를 설명합니다. 게다가 이후의 발전 방향이라고 할 수 있는 QUIC과 HTTP/3에 대한 논의도 다룹니다.
그저 동작하는 사이트와 프로그램에 그치지 않고 웹을 좀 더 깊게 다루고 싶다면 도움이 될 책이라고 생각하며, 한국어판이 좀 더 빠른 습득에 도움이 됐으면 합니다.


목차


1부. HTTP/2로의 전환

1장. 웹 기술과 HTTP
1.1 웹의 동작 방식
1.1.1 인터넷과 월드 와이드 웹
1.1.2 웹을 돌아다닐 때 일어나는 일
1.2 HTTP란 무엇인가?
1.3 HTTP의 문법과 역사
1.3.1 HTTP/0.9
1.3.2 HTTP/1.0
1.3.3 HTTP/1.1
1.4 HTTPS 개론
1.5 HTTP 메시지를 보고 보내고 받는 용도로 쓰이는 도구
1.5.1 웹 브라우저의 개발자 도구 사용
1.5.2 HTTP 요청 전송
1.5.3 HTTP 요청을 보고 전송하기 위한 기타 도구
요약

2장. HTTP/2를 향한 여정
2.1 HTTP/1.1과 현재의 월드 와이드 웹
2.1.1 HTTP/1.1의 근본적인 성능 문제
2.1.2 HTTP/1.1에 대한 파이프라이닝
2.1.3 웹 성능 측정에 대한 폭포수 다이어그램
2.2 HTTP/1.1 성능 문제의 회피책
2.2.1 여러 HTTP 연결 사용
2.2.2 요청 수 줄이기
2.2.3 HTTP/1 성능 최적화 요약
2.3 HTTP/1.1의 기타 이슈
2.4 실세계 예제
2.4.1 예제 웹 사이트 1: amazon.com
2.4.2 예제 웹 사이트 2: imgur.com
2.4.3 이것은 정말로 얼마나 큰 문제인가?
2.5 HTTP/1.1에서 HTTP/2로의 이동
2.5.1 SPDY
2.5.2 HTTP/2
2.6 HTTP/2의 웹 성능
2.6.1 HTTP/2의 파워에 대한 극단적인 사례
2.6.2 HTTP/2 성능 개선에 대한 기대치 설정
2.6.3 잠재적인 안티패턴으로서의 HTTP/1.1에 대한 우회적 성능 해법
요약

3장. HTTP/2로 업그레이드
3.1 HTTP/2 지원
3.1.1 브라우저 측면에서의 HTTP/2 지원
3.1.2 서버에 대한 HTTP/2 지원
3.1.3 HTTP/2가 지원되지 않는 경우의 대비책
3.2 웹 사이트에 HTTP/2를 활성화시키는 방법
3.2.1 웹 서버상의 HTTP/2
3.2.2 역방향 프록시를 사용한 HTTP/2
3.2.3 CDN을 통한 HTTP/2
3.2.4 HTTP/2 구현 요약
3.3 HTTP/2 설정 문제 해결
요약


2부. HTTP/2 사용

4장. HTTP/2 프로토콜 기초
4.1 HTTP/1.2가 아니라 HTTP/2인 이유
4.1.1 텍스트 대신 바이너리
4.1.2 동기적이기보다는 다중화된 프로토콜
4.1.3 스트림 우선순위화와 흐름 제어
4.1.4 헤더 압축
4.1.5 서버 푸시
4.2 HTTP/2 연결이 설정되는 방식
4.2.1 HTTPS 협상 사용
4.2.2 HTTP Upgrade 헤더 사용
4.2.3 사전 지식 사용
4.2.4 HTTP 대안 서비스
4.2.5 HTTP/2 프레퍼스 메시지
4.3 HTTP/2 프레임
4.3.1 HTTP/2 프레임 보기
4.3.2 HTTP/2 프레임 형식
4.3.3 HTTP/2 메시지 흐름을 예제로 살펴보기
4.3.4 기타 프레임
요약

5장. HTTP/2 푸시의 구현
5.1 HTTP/2 서버 푸시란?
5.2 푸시 방식
5.2.1 푸시에 HTTP link 헤더 사용
5.2.2 HTTP/2 푸시 보기
5.2.3 링크 헤더를 사용해 다운스트림 시스템에서 푸시
5.2.4 이른 시점에 푸시
5.2.5 다른 방식의 푸시
5.3 HTTP/2가 브라우저에서 동작하는 방식
5.3.1 푸시 캐시 동작 방식 확인
5.3.2 RST_STREAM으로 푸시 거부
5.4 조건부로 푸시하는 방법
5.4.1 서버 측에서 푸시 추적
5.4.2 HTTP 조건적 요청 사용
5.4.3 쿠키 기반 푸시 사용
5.4.4 캐시 다이제스트 사용
5.5 푸시할 대상
5.5.1 무엇을 푸시할 수 있는가?
5.5.2 무엇을 푸시해야 하는가?
5.5.3 푸시 자동화
5.6 HTTP/2 푸시 문제 해결
5.7 HTTP/2 푸시의 성능 영향
5.8 푸시와 프리로드
5.9 HTTP/2 푸시에 대한 기타 사용 사례
요약

6장. HTTP/2 최적화
6.1 HTTP/2가 웹 개발자에게 의미하는 것
6.2 HTTP/1.1 최적화 중 일부는 이제 안티패턴인가?
6.2.1 HTTP/2 요청에는 여전히 비용이 든다
6.2.2 HTTP/2에는 한계가 있다
6.2.3 더 큰 리소스에는 압축이 더 효율적이다
6.2.4 대역폭 제한과 리소스 경합
6.2.5 샤딩
6.2.6 인라이닝
6.2.7 결론
6.3 HTTP/2에서도 여전히 적절한 웹 성능 기법
6.3.1 전송되는 데이터의 양 최소화
6.3.2 데이터 재전송 방지용 캐시 사용
6.3.3 서비스 워커가 네트워크의 부하를 더 줄일 수 있다
6.3.4 필요하지 않은 것을 보내지 말라
6.3.5 HTTP 리소스 힌트
6.3.6 최종 구간에 대한 대기시간 단축
6.3.7 HTTPS 최적화
6.3.8 HTTP와 연관되지 않은 웹 성능 기법
6.4 HTTP/1.1과 HTTP/2 모두 최적화
6.4.1 HTTP/2 트래픽 측정
6.4.2 서버 측의 HTTP/2 지원 감지
6.4.3 클라이언트 측의 HTTP/2 지원 감지
6.4.4 연결 통합
6.4.5 HTTP/1.1 사용자를 위해 언제까지 최적화할 것인가
요약


3부. 고급 HTTP/2

7장. 고급 HTTP/2 개념
7.1 스트림 상태
7.2 흐름 제어
7.2.1 흐름 제어 예제
7.2.2 서버에 흐름 제어 설정
7.3 스트림 우선순위
7.3.1 스트림 의존성
7.3.2 스트림 가중치
7.3.3 우선순위 지정이 복잡해야 하는 이유
7.3.4 웹 서버와 브라우저에서의 우선순위 지정
7.4 HTTP/2 적합성 테스팅
7.4.1 서버 적합성 테스팅
7.4.2 클라이언트 적합성 테스팅
요약

8장. HPACK 헤더 압축
8.1 헤더 압축이 필요해진 이유
8.2 압축이 동작하는 방식
8.2.1 조회 테이블
8.2.2 더 효율적인 인코딩 기법
8.2.3 룩백 압축
8.3 HTTP 본문 압축
8.4 HTTP/2의 HPACK 헤더 압축
8.4.1 HPACK 정적 테이블
8.4.2 HPACK 동적 테이블
8.4.3 HPACK 헤더 유형
8.4.4 허프만 코딩 테이블
8.4.5 허프만 인코딩 스크립트
8.4.6 허프만 인코딩이 항상 최적이 아닌 이유
8.5 HPACK 압축의 실세계 예제
8.6 클라이언트 구현과 서버 구현에서의 HPACK
8.7 HPACK의 가치
요약


4부. HTTP의 미래

9장. TCP, QUIC, HTTP/3
9.1 TCP의 비효율성과 HTTP
9.1.1 HTTP 연결 생성 시 설정 지연
9.1.2 TCP의 혼잡 제어 비효율성
9.1.3 HTTP/2에 대한 TCP 비효율성의 영향
9.1.4 TCP 최적화
9.1.5 TCP와 HTTP의 미래
9.2 QUIC
9.2.1 QUIC의 성능상 이점
9.2.2 QUIC과 인터넷 스택
9.2.3 UDP의 성격과 QUIC이 UDP 기반인 이유
9.2.4 QUIC 표준화
9.2.5 HTTP/2와 QUIC 사이의 차이점
9.2.6 QUIC 도구
9.2.7 QUIC 구현
9.2.8 QUIC을 사용해야 할까?
요약

10장. HTTP가 나아가는 방향
10.1 HTTP/2의 논란과 HTTP/2가 고치지 못한 것
10.1.1 SPDY에 대한 논쟁
10.1.2 HTTP의 개인 정보 문제와 상태
10.1.3 HTTP와 암호화
10.1.4 전송 프로토콜 문제
10.1.5 HTTP/2는 지나치게 복잡하다
10.1.6 HTTP/2는 임시방편이다
10.2 실세계에서의 HTTP/2
10.3 HTTP/2의 향후 버전과 HTTP/3이나 HTTP/4가 가져올 것
10.3.1 QUIC이 HTTP/3인가?
10.3.2 HTTP 바이너리 프로토콜의 추가 발전
10.3.3 전송 계층 위에서 진화하는 HTTP
10.3.4 무엇이 새로운 HTTP 버전을 필요로 할까?
10.3.5 향후 HTTP 버전이 도입될 방법
10.4 더 일반적인 전송 계층으로서의 HTTP
10.4.1 HTTP 의미론과 메시지를 사용해 비웹 트래픽 전달
10.4.2 HTTP/2 바이너리 프레이밍 계층 사용
10.4.3 HTTP를 사용해 다른 프로토콜 시작
요약

부록. 일반적인 웹 서버를 HTTP/2로 업그레이드
A.1 HTTP/2를 지원하도록 웹 서버 업그레이드
A.1.1 아파치
A.1.2 nginx
A.1.3 마이크로소프트 인터넷 정보 서비스(IIS)
A.1.4 기타 서버
A.2 역방향 프록시 서버를 통한 HTTP/2 설정
A.2.1 아파치
A.2.2 nginx

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.