2016-10-12 8 views

답변

2

나는 이것에 관해 프레젠테이션을했으며, here을 찾을 수 있습니다.

특히 데모 (36:37에서 시작)는 멀티플렉싱만으로 얻을 수있는 이점과 HTTP/2 푸시를 추가하여 얻을 수있는 이점을 보여줍니다.

스포일러 : HTTP/2 멀티플렉싱과 푸시 조합은 HTTP/1.1과 관련하여 더 나은 결과를 제공합니다.

그런데 모든 경우가 다르기 때문에 실제로 사례를 측정해야합니다. 그러나 HTTP/1.1보다 HTTP/2가 더 나은 성능을 낼 수있는 잠재력은 매우 커서 많은 경우 대부분이 이점을 누릴 수 있습니다.

1

정확하게 여기에 묻는 것이 확실하지 않거나 StackOverflow에 적합하지만 none-the-less에 대답하려고 시도 할 것인지 확실하지 않습니다. 이것이 당신이 찾고있는 해답이 아닌 경우 질문을 다시 말하면서 당신이 정확히 무엇을 찾고 있는지 이해할 수 있습니다.

HTTP/2가 멀티플렉싱을 사용하므로 여러 연결 (그리고이를 설정하고 관리하는 데 필요한 시간과 리소스)이 필요하지 않습니다. 그러나 제한이 없으므로 (브라우저는 일반적으로 호스트 당 4-6 개의 연결로 제한됩니다.) 연결을 공유하기 위해 "유사한"연결 (동일한 IP 및 동일한 인증서이지만 다른 호스트 이름)을 허용하기 때문에 그 이상입니다. 기본적으로 HTTP/1의 요청/응답 방법이 의미하는 자원 대기열을 해결하고 HTTP/1이 해결 방법으로 요구하는 제한된 다중 연결의 필요성을 줄입니다. 샤딩, 스프라이트 파일, 연결 ... 등과 같은 다른 해결 방법에 대한 필요성을 줄여줍니다.

그리고 예 HTTP/2 서버 푸시가 한 번의 왕복으로 저장됩니다. 따라서 웹 페이지를 요청할 때 HTML과 CSS를 보내야합니다. 왜냐하면 서버는 HTML을 보내지 않고 웹 브라우저가 그것을 기다리고 파싱 할 때까지 기다릴 필요가 없으므로 서버가 CSS를 필요로한다는 것을 알고 있습니다. CSS가 필요하고 CSS 파일을 요청하고 다운로드 할 때까지 기다리십시오.

왕복 시간이 너무 짧아서 HTTP/2 멀티플렉싱으로 인해 파일을 요청할 때 지연이 없기 때문에 HTTP/2 서버 푸시가 거의 필요 없음을 의미하는지 확실하지 않습니다. ? 그렇게하지 않는다면 리소스를 밀어 넣을 때 상당한 이익이 있습니다. 특히 CSS와 같은 리소스를 차단하면 브라우저가 화면에 하나의 그림을 그리기 전에 대기하게됩니다. 멀티플렉싱은 요청을 보내는 데 걸리는 지연을 줄이지 만 서버로 이동하는 요청의 대기 시간을 줄이지는 않습니다. 이제 서버가 이에 응답하여 다시 전송합니다. 이러한 소리는 작지만 눈에 띄며 웹 사이트를 느리게 만듭니다.

그렇습니다. 현재 HTTP/2 Server Push의 주요 이점은 왕복 시간을 줄이는 것입니다 (기본적으로 주요 리소스는 0입니다).

그러나 우리는 초기 단계에 있으며 성능이나 기타 이유로 잠재적 인 다른 용도가 있습니다. 예를 들어 이것을 우선 순위를 정하는 방법으로 사용할 수 있으므로 브라우저가 CSS와 자바 스크립트를 먼저 요청하고 나중에 이미지를 남길 때 중요한 이미지가 일찍 푸시 될 수 있습니다. 서버 푸시는 인라인 CSS (스타일 시트 사본이있는 페이지를 비우고 적절한 CSS 파일을로드하려면 자바 스크립트가 필요할 수도 있음) - 다른 HTTP/1의 필요성을 무효화 할 수 있습니다.성능에 대한 1 가지 해결책. 앞으로 몇 년 동안 HTTP/2 Server Push로 어떤 일이 일어나는지 지켜 보는 것은 매우 흥미로울 것입니다.

이렇게 말하면 HTTP/2 서버 푸시에 여전히 중대한 문제가 있습니다. 가장 중요한 것은 브라우저가 이미 캐시 한 리소스를 밀어 대역폭을 낭비하는 것을 어떻게 방지 할 수 있을까요? 아마도 다이제스트 HTTP 헤더가 추가 될 것이지만 여전히 논의 중에 있습니다. 웹 브라우저, 웹 서버 및 웹 개발자에게 가장 좋은 방법으로 HTTP/2 Server Push를 구현하는 방법은 무엇입니까? HTTP/2 spec은 이것이 구현되어야하는 방법에 대해 다소 모호합니다. 다른 웹 서버, 특히 리소스를 푸시하기 위해 서버에 신호를 보내는 여러 가지 방법을 제공합니다.

제가 말했듯이, 저는이 부분이 HTTP/2의 일부분으로 매우 흥미로운 응용 프로그램으로 이어질 수 있다고 생각합니다. 우리는 흥미로운 시대에 살고 ...

관련 문제