Wstępna obsługa serwera HTTP/2

· Komponenty

Od sgcWebSockets 4.4.3 protokół HTTP/2 jest wstępnie obsługiwany (wciąż w fazie beta) przez TsgcWebSocketHTTPServer. Szybki serwer oparty na HTTP.SYS otrzyma obsługę HTTP/2 w kolejnych wersjach.

Domyślnie obsługa HTTP/2 jest wyłączona, więc musisz ją włączyć przed testowaniem. Pojawiła się nowa właściwość o nazwie HTTP2Options — wystarczy ustawić HTTP2Options.Enabled = true, aby zezwolić na protokół HTTP/2.

Porównanie wydajności

Zróbmy bardzo proste porównanie wydajności protokołów HTTP 1.1 i HTTP/2. Użyjemy naszego przykładu demonstracyjnego ServerChat i otworzymy stronę główną. Korzystając z narzędzi deweloperskich Chrome, porównamy, ile czasu zajmuje jeden protokół w stosunku do drugiego.

HTTP 1.1 

Dokument główny zajmuje 36 ms i kończy się po 413 ms. 

Protokół HTTP/2 

Dokument główny zajmuje 4 ms i kończy się po 257 ms. 

A zwycięzcą jest...

HTTP/2!!!

Oczywiście jest to bardzo podstawowy i nierozstrzygający test, ale widać, że użycie pojedynczego połączenia do pobrania 8 dokumentów (HTTP/2) jest znacznie szybsze niż użycie kilku połączeń (HTTP 1.1).