Entwicklung von SPDY-Anwendungen mit Netty

Daten auf Speed

Norman Maurer


ArtikelserieTeil 1: Entwicklung von Netzwerkapplikationen Teil 2: Mit Netty WebSockets unterstützenTeil 3: Netty via SPDYTeil 4: Neues in Netty 4.0.0

Im letzten Teil der Netty-Reihe wurde anhand eines Beispiels gezeigt, wie es möglich ist, WebSocket-gestützte Anwendungen zu entwickeln. Ein weiterer Teil der Neuerungen, wenn es um skalierbare und schnelle Webanwendungen geht, soll im Folgenden beleuchtet werden: das Netzwerkprotokoll SPDY. Um das hier gezeigte Beispiel anzuwenden, bedarf es folgender Voraussetzungen:

Netty 3.5.8. Final oder höherNPN-Boot [1]NPN-API [2]

Warum SPDY?

SPDY (ausgesprochen „speedy“) wurde von Google entwickelt, mit dem Ziel, Webseiten bzw. Content schneller zur Verfügung zu stellen, und zwar mithilfe mehrerer Aktionen. Zu den Hauptmerkmalen zählen:

Jede SPDY-Übertragung wird via GZIP komprimiert. Das betrifft Content und die HTTP-Header.Jede SPDY-Übertragung wird via TLS verschlüsselt und ist somit vor Abhörversuchen geschützt.Mehrere Übertragungen per Verbindung sind möglich.Priorisierung der einzelnen Anfragen, um kritische Daten schneller zur Verfügung zu stellen.

Weitere erwähnenswerte Features sind unter anderem:

Server-PushServer-Hint, wodurch es möglich ist, den Client einen Hinweis auf die Daten zu schicken.

Somit sind einige Features durchaus redundant mit denen von WebSockets. Und so sind auch die Anwendungsfälle oft identisch, wie z. B.:

Chat-SystemeMonitoring-SystemeWebmailStock-Ticker

Nichtsdestotrotz befinden sich beide oft in Benutzung bei Webseiten oder Webapplikationen, die ihren Nutzern Daten möglichst schnell zur Verfügung stellen wollen. Hierbei wird oft eine Geschwindigkeitsverbesserung von 50 % oder sogar mehr erreicht, sobald SPDY eingesetzt wird. Wer einen tieferen Einblick in SPDY erlangen möchte, dem sei das SPDY-Whitepaper [3] ans Herz gelegt.

SPDY und dessen Verbreitung

Da SPDY noch stetig weiterentwickelt wird, ist es kaum verwunderlich, dass es mehrere Versionen in der „freien Wildbahn“ gibt. Sie sind in einzelnen Drafts beschrieben:

Draft 1 – Erste VersionDraft 2 – Spezifizierung von Server-Push (u. a.)Draft 3 – Hinzufügen von Flow-Control

Genauso wenig verwunderlich ist es, dass Chrome der erste Webbrowser war, der SPDY unterstützte. Schließlich entstand das Netzwerkprotokoll im Hause Google. Firefox unterstützt SPDY seit Version 11, wobei erst seit Version 13 SPDY standardmäßig aktiviert ist. Auch Opera stellt mittlerweile eine Art experimentellen Build zur Verfügung, der SPDY-Support mitbringt. Nur Inter...

Entwicklung von SPDY-Anwendungen mit Netty

Daten auf Speed

Norman Maurer


ArtikelserieTeil 1: Entwicklung von Netzwerkapplikationen Teil 2: Mit Netty WebSockets unterstützenTeil 3: Netty via SPDYTeil 4: Neues in Netty 4.0.0

Im letzten Teil der Netty-Reihe wurde anhand eines Beispiels gezeigt, wie es möglich ist, WebSocket-gestützte Anwendungen zu entwickeln. Ein weiterer Teil der Neuerungen, wenn es um skalierbare und schnelle Webanwendungen geht, soll im Folgenden beleuchtet werden: das Netzwerkprotokoll SPDY. Um das hier gezeigte Beispiel anzuwenden, bedarf es folgender Voraussetzungen:

Netty 3.5.8. Final oder höherNPN-Boot [1]NPN-API [2]

Warum SPDY?

SPDY (ausgesprochen „speedy“) wurde von Google entwickelt, mit dem Ziel, Webseiten bzw. Content schneller zur Verfügung zu stellen, und zwar mithilfe mehrerer Aktionen. Zu den Hauptmerkmalen zählen:

Jede SPDY-Übertragung wird via GZIP komprimiert. Das betrifft Content und die HTTP-Header.Jede SPDY-Übertragung wird via TLS verschlüsselt und ist somit vor Abhörversuchen geschützt.Mehrere Übertragungen per Verbindung sind möglich.Priorisierung der einzelnen Anfragen, um kritische Daten schneller zur Verfügung zu stellen.

Weitere erwähnenswerte Features sind unter anderem:

Server-PushServer-Hint, wodurch es möglich ist, den Client einen Hinweis auf die Daten zu schicken.

Somit sind einige Features durchaus redundant mit denen von WebSockets. Und so sind auch die Anwendungsfälle oft identisch, wie z. B.:

Chat-SystemeMonitoring-SystemeWebmailStock-Ticker

Nichtsdestotrotz befinden sich beide oft in Benutzung bei Webseiten oder Webapplikationen, die ihren Nutzern Daten möglichst schnell zur Verfügung stellen wollen. Hierbei wird oft eine Geschwindigkeitsverbesserung von 50 % oder sogar mehr erreicht, sobald SPDY eingesetzt wird. Wer einen tieferen Einblick in SPDY erlangen möchte, dem sei das SPDY-Whitepaper [3] ans Herz gelegt.

SPDY und dessen Verbreitung

Da SPDY noch stetig weiterentwickelt wird, ist es kaum verwunderlich, dass es mehrere Versionen in der „freien Wildbahn“ gibt. Sie sind in einzelnen Drafts beschrieben:

Draft 1 – Erste VersionDraft 2 – Spezifizierung von Server-Push (u. a.)Draft 3 – Hinzufügen von Flow-Control

Genauso wenig verwunderlich ist es, dass Chrome der erste Webbrowser war, der SPDY unterstützte. Schließlich entstand das Netzwerkprotokoll im Hause Google. Firefox unterstützt SPDY seit Version 11, wobei erst seit Version 13 SPDY standardmäßig aktiviert ist. Auch Opera stellt mittlerweile eine Art experimentellen Build zur Verfügung, der SPDY-Support mitbringt. Nur Inter...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang