>  기사  >  http2.0과 http1.1의 차이점

http2.0과 http1.1의 차이점

(*-*)浩
(*-*)浩원래의
2019-06-03 11:04:138324검색

HTTP 2.0이란 무엇입니까?

HTTP/2(Hypertext Transfer Protocol 버전 ​​2, 원래 이름은 HTTP 2.0)는 HTTP 프로토콜의 세 번째 버전입니다. World Wide Web에서 사용되는 주요 버전. HTTP/2는 1999년 HTTP 1.1 출시 이후 HTTP 프로토콜의 첫 번째 업데이트입니다. 주로 SPDY 프로토콜(네트워크 지연을 최소화하고 네트워크 속도를 높이고 최적화하기 위해 Google에서 개발한 TCP 기반 애플리케이션 계층 프로토콜)을 기반으로 합니다. 사용자의 네트워크 사용 경험).

http2.0과 http1.1의 차이점

HTTP 1.1과 비교했을 때 주요 차이점은 다음과 같습니다.

HTTP/2 채택 텍스트 형식 대신 바이너리 형식

HTTP/2는 순서 및 차단이 아닌 완전히 다중화됩니다. 병렬 처리에는 단 하나의 연결만 필요합니다

헤더 압축을 사용하면 HTTP/2가 오버헤드를 줄입니다. .PHP 튜토리얼

.

HTTP/2가 왜 바이너리인가요?

HTTP/1.x와 같은 텍스트 프로토콜에 비해 바이너리 프로토콜은 구문 분석이 더 효율적이고 "온라인"이며 더 중요한 것은 오류가 적다는 것입니다.
HTTP/2에 멀티플렉싱이 필요한 이유는 무엇입니까?

HTTP/1.x에는 줄 끝 차단이라는 문제가 있습니다( HOL(head-of-line) 차단) 이는 연결이 한 번에 하나의 요청만 제출하는 것이 더 효율적이며 요청이 많아지면 속도가 느려진다는 것을 의미합니다. HTTP/1.1은 이 문제를 해결하기 위해 파이프라인을 사용하려고 시도했지만 그 효과는 이상적이지 않았습니다(대량 데이터 볼륨 또는 느린 응답은 그 뒤에 있는 요청을 방해함). 또한 네트워크 미디어(중개자)로 인해 서버가 이를 지원할 수 없습니다. 파이프라인이 잘 작동하지 않아 배포가 어려워집니다. 멀티플렉싱은 여러 메시지 요청과 응답을 동시에 처리할 수 있기 때문에 이러한 문제를 매우 효과적으로 해결할 수 있습니다. 전송 프로세스 중에 하나의 메시지를 다른 메시지와 혼합할 수도 있습니다. 따라서 클라이언트는 페이지를 로드하는 데 하나의 연결만 필요합니다.
메시지 헤더를 압축해야 하는 이유

페이지에 로드해야 하는 리소스가 80개 있다고 가정합니다( 이 숫자는 오늘날의 웹에 대한 것입니다. 상당히 보수적입니다.) 각 요청에는 1400바이트 메시지 헤더가 있으며(쿠키와 참조가 있기 때문에 흔한 일임), 왕복하는 데 최소 7~8시간이 걸립니다. "온라인"으로 얻으십시오. 이 헤더. 여기에는 응답 시간이 포함되지 않습니다. 이는 클라이언트에서 응답을 다시 받는 데 걸리는 시간일 뿐입니다. 이는 모두 알려진 패킷 수에 따라 어떤 패킷을 앞뒤로 가져올지 결정하는 TCP의 느린 시작 메커니즘 때문입니다. 이는 분명히 처음 몇 번의 왕복에서 보낼 수 있는 패킷 수를 제한합니다. 대조적으로, 헤더를 약간만 압축해도 해당 요청을 한 번의 왕복으로, 때로는 한 개의 패킷으로 처리할 수 있습니다. 특히 좋은 조건에서도 일반적으로 수백 밀리초의 왕복 대기 시간이 발생하는 모바일 클라이언트 애플리케이션을 고려할 때 이러한 오버헤드를 줄일 수 있습니다.
서버 푸시의 이점은 무엇인가요?

브라우저가 웹페이지를 요청하면 서버는 HTML을 다시 전송한 후 서버가 JavaScript, 이미지 및 CSS 전송을 시작합니다. 서버는 브라우저를 기다려야 합니다. 모든 포함된 리소스에 대한 HTML 및 보내기 요청을 구문 분석합니다. 서버 푸시 서비스는 클라이언트가 필요하다고 생각하는 콘텐츠를 클라이언트 캐시에 "푸시"하여 왕복 지연을 방지합니다.

위 내용은 http2.0과 http1.1의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.