Was ist SPDY und wie kann es Ihre Browser-Erfahrung maximieren?
Haben Sie sich jemals frustriert über die langsame Ladezeit einer Webseite gefühlt oder waren Sie besorgt über deren Sicherheit (oder deren Fehlen)? Google entwickelt gerade etwas, das einige dieser Probleme lösen sollte. Es heißt SPDY und wird in Verbindung mit HTTP das Internet wesentlich schneller machen.
Erstens: Was ist HTTP??
Abkürzung für HyperText Transfer Protocol (HTTP) ist das zugrunde liegende Protokoll für das Internet. Es ist ein Protokoll auf Anwendungsebene, ein Satz von Regeln, die festlegen, wie zwei Geräte miteinander kommunizieren und Daten gemeinsam nutzen. Leider ist die Latenzzeit von Webseiten oder langsame Ladezeiten aufgrund ihres Designs ein erhebliches Problem, mit dem HTTP konfrontiert ist. Wenn Sie HTTPS verwenden, verwenden Sie HTTPS Everywhere: HTTPS statt HTTP verwenden, wenn möglich HTTPS Everywhere: HTTPS anstelle von HTTP verwenden, wenn möglich Read More, einige davon sind möglicherweise weniger problematisch.
Ursprünglich hatte HTTP die Aufgabe, die Kommunikation mit dem Server nach jedem Anforderungs- / Antwortzyklus zu beenden, wobei ein Gerät eine Datenanforderung an ein anderes Gerät sendet und diese Daten dann vom anderen Gerät empfängt. Dies führte zum vollständigen Aufbau und Ausfall eines TCP-Kanals für jede Anforderung, was hinsichtlich der Bandbreite teuer war und die Computer und Server unnötig belastete. TCP ist wie HTTP ein Webprotokoll, das speziell garantierte Zustellung, Unterdrückung von Duplikaten, In-Order-Zustellung, Flusskontrolle, Vermeidung von Überlastungen und andere Transportfunktionen bietet.
Ein weiteres Problem bestand darin, dass es FIFO-Semantik enthielt. Die FIFO- oder First-In-First-Out-Semantik schreibt im Wesentlichen vor, dass bei der ersten Anforderung, die beim Server eingeht, die erste Antwort ausgegeben wird. Dies kann jedoch ein Problem sein. Wenn sich eine langsame Anforderung vor der Warteschlange befindet, müssen die dahinterliegenden Anforderungen länger warten, und es kommt zu einem Rückfluss von Anforderungen.
Dann kam HTTP 1.1 mit einigen wichtigen Änderungen, um dieses Problem zu lösen. Zum einen erlaubte HTTP 1.1 neue Arten von TCP-Verbindungen, durch die die Kanäle zwischen Anforderungs- und Antwortzyklen geöffnet bleiben konnten. Diese wurden "Keep Alive" -Verbindungen genannt. HTTP 1.1 erlaubt auch etwas aufgerufenes Pipelining, die versprach, das One-at-a-Time-System für die Bearbeitung von Anfragen zu beseitigen. Keep-Alive-Verbindungen wurden weithin angenommen, während das Pipelining nur von Opera verwendet wurde, was bekannt ist für die Verwendung innovativerer Technologien viel über Opera gehört, da der Browser von weitem als Internet Explorer angesehen wurde, dann Firefox und jetzt Google Chrome die… Read More in seinem Browser.
Was ist mit SPDY??
Da das Pipelining nicht weit verbreitet war, blieb die Latenzzeit von Webseiten immer noch ein Problem. 2009 gab Google bekannt, dass mit der Entwicklung von SPDY begonnen wurde, mit dem Ziel, das Internet zu beschleunigen.
SPDY ist ein offenes Netzwerkprotokoll, das zusätzlich zu HTTP zum Transport von Webdaten verwendet werden soll. Als offenes Netzwerkprotokoll werden Regeln dafür festgelegt, wie Daten in Netzwerken gemeinsam genutzt werden.
Es funktioniert durch Manipulieren des HTTP-Datenverkehrs, um die Latenzzeit für das Laden von Webseiten zu reduzieren. Dazu wird jeder Anforderung eine bestimmte Kennung zugewiesen, die als Stream-ID bezeichnet wird. Von dort aus kann es das FIFO-System von HTTP umgehen, indem es nur einen TCP-Kanal verwendet. Es können mehrere Anfragen gleichzeitig beantwortet werden, wodurch Warteschlangen freigegeben und langsame Ladezeiten verkürzt werden. Dank dieser Stream-ID geht jedoch nichts verloren oder wird durcheinander gebracht.
SPDY reduziert auch die Ladezeit von Webseiten, indem die mit Anforderungen gelieferten Header komprimiert werden. Unkomprimiert, da sie über HTTP kommen, können sie in der Größe von etwa 200 Byte bis weit über 2 KB variieren. Es ist auch nicht ungewöhnlich, dass Anforderungsheader 700 KB groß sind. Wenn diese unkomprimiert in den Server gelangen, nehmen sie Bandbreite in Anspruch, und die Latenz kann eine Verbindung mit sich bringen.
Redundante Header werden bei Anfragen ebenfalls entfernt. Nachdem ein Header einmal erstellt wurde, muss er nicht immer wieder gesendet werden. Dies ist dank SPDY nicht der Fall.
SPDY erfordert SSL aus Sicherheitsgründen, wodurch es wesentlich sicherer als HTTP ist. Nicht nur das, es hat sich in Kopf-an-Kopf-Tests gezeigt, dass sie 64% schneller sind als HTTP, obwohl nachfolgende Tests, die von wenigen Teams durchgeführt wurden, gezeigt haben, dass dies insgesamt keinen großen Unterschied macht, da Websites dies tun eine Menge von unterschiedlichem Quellmaterial, bei dem noch eine gewisse Latenz vorhanden wäre.
Trotzdem wird SPDY ab November 2014 von 2,3% aller Websites, einschließlich Twitter und vielen Diensten von Google, unterstützt.
Wie kann ich es benutzen??
Wenn Sie Google-Dienste oder Twitter verwenden, verwenden Sie bereits SPDY. Da jedoch nur wenige Websites SPDY unterstützen, werden Sie wahrscheinlich lange Zeit nicht mehr als HTTP oder HTTPS verwenden.
Für Benutzer mit Webservern können Sie SPDY normalerweise implementieren, ohne Webinhalte ändern zu müssen. Für Apache-Benutzer Einrichten eines Apache-Webservers in 3 einfachen Schritten Einrichten eines Apache-Webservers in 3 einfachen Schritten Was auch immer der Grund ist, Sie möchten vielleicht irgendwann einen Webserver zum Laufen bringen. Unabhängig davon, ob Sie sich selbst auf bestimmte Seiten oder Dienste zugreifen möchten, möchten Sie eine Community erhalten… Lesen Sie weiter, es gibt eine SPDY-Erweiterung, die installiert werden kann, genannt mod_SPDY. Wenn Sie Nginx verwenden, können Sie den SPDY-Patch anwenden. Während mod_SPDY und der SPDY-Patch für Nginx sicherlich neu und wahrscheinlich verwirrend sind, sind sie nicht unglaublich schwer zu installieren. Sie benötigen jedoch weiterhin ein SSL-Zertifikat. Dieser Artikel von Mohan Ramkumar zeigt Ihnen, wie Sie Ihr eigenes SSL-Zertifikat beziehen können. So erhalten Sie Ihr eigenes kostenloses SSL-Zertifikat. So erhalten Sie Ihr eigenes kostenloses SSL-Zertifikat. Weitere Informationen erhalten Sie kostenlos.
Wenn Sie sich in einem Browser befinden und wissen möchten, welche Websites SPDY unterstützen, gibt es Apps und Add-Ons, die anzeigen, ob die Option aktiviert ist oder nicht, z. B. SPDY Indicator für Chrome und Mozilla Firefox. Es wird ein kleines grünes Blitzsymbol angezeigt, wenn es für eine bestimmte Website aktiviert ist, und ein optionales graues Symbol, wenn es nicht aktiviert ist.
Fazit
Obwohl SPDY in der realen Welt möglicherweise nicht schneller als HTTP ist, ist es bereits vorhanden und wird bereits von mehreren Webbrowsern unterstützt, darunter Chrome / Chromium, Mozilla Firefox, Opera, Amazon Silk und Safari. Die Aktivierung von SPDY auf Ihrem eigenen Server mag anfangs etwas kompliziert sein, aber Sie bereiten den Weg für ein neues World Wide Web.
Hast du Erfahrung mit SPDY? Hinterlasse einen Kommentar und wir chatten!
Bild-Gutschrift: Server Room über Flickr, Unplugged über Flickr, SPDY Aktiviert in Firefox 12.0 über Flickr
Erfahren Sie mehr über: Google, Webentwicklung.