Post on 28-Jan-2018
24.11.2015 – Wahid Rahim
Wichtigste Features
• Server Push
• Multiplexing
• Binary Encoding
• Header Compression
Einfaches HTTP/1.1 Beispiel
GET /my/dashboard HTTP/1.1 Host: www.ranksider.deHTTP/1.1 200 OK…<html>….
GET /assets/css/style.css HTTP/1.1 Host: www.ranksider.deHTTP/1.1 200 OK…body{….
In HTTP/2
GET /my/dashboard HTTP/2.0 Host: www.ranksider.de
HTTP/2.0 200 OKLink: </assets/css/style.css>; rel=preload; as=stylesheet…<html>….
Bei HTPP sind diese Daten binär und nicht exakt so.
Mehrere Requests und Responses parallel über eine einzige
Verbindung
Freut euch nicht zu früh!
Kann ich schon heute HTTP/2 einsetzen?
Ja
Soll ich HTTP/2 einsetzen?
Für neue Seiten: JaFür bestehenden Seiten: Hängt davon ab…
HTTP/1.1 Optimierungsstrategiensind schlecht für HTTP/2
Domain Sharding
Browser begrenzen die Anzahl der Verbindungenpro Domain
Als Folge werden die Assets auf mehrereDomains verteilt. Als Beispiel Youtubei.ytimg.com für Icons, Avatars, etc.s.ytimg.com für Stylesheets und JavaScript
In HTTP/2 müssen diese Domains auch HTTPs unterstützen und eine
HTTPS-Verbindung ist deutlichlangsamer.
CSS-Sprites
In HTTP/1.1 werden die Icons in eine Dateizusammengefasst, um die Anzahl der Verbindungen zu begrenzen.
In HTTP/2 müssen diese Dateien über eine Sichere Verbindung übertragen werden. Größere Dateien zu verschlüsseln und wieder zu entschlüsseln ist aber deutlich langsamer.
Besonderheit: Subdomains
Wenn die Verbindungen auf mehreren Subdomains verteilt sind und diese Subdomains auf dieselbe IP zeigen und ein Wildcard-Zertifikat vorhanden ist, dann ist ein Upgrade auf HTTP/2 sinnvoll.
Für eine Subdomain keine neue Verbindung nötig, wenn eine Verbindung zur Haupt-Domain bereits besteht.
Fazit
HTTP/2 ist wichtiger Schritt nach vorne, aberkein großer Wurf.
Der größte Nachteil: Browser beachten die lokale Cache beim Server-Push nicht.
Vielen Dankwww.RankSider.de
www.Wahid.de