HomeKontaktImpressum
Sie sind hier: Home

Ansatzpunkte zur Minimierung von HTTP-Requests

Die Optimierung der Request-Struktur von Websites kann den Seitenaufbau einer Internetseite deutlich bescheunigen. Zu diesem Zweck ist der Einsatz von eingebetteten Objekten oder auch die Zusammenfassung von mehreren Bildern zu Sprites eine Überlegung wert.

Wie bereits in den vorherigen Beiträgen angemerkt wurde, sollte die Anzahl der HTTP-Requests, die zur Darstellung einer Internetseite an den Webserver geschickt werden, möglichst gering gehalten werden (s. auch Minimierung von Requests und Verarbeitung eines HTTP-Request). Im Prinzip sollte jede Website – allein schon im Hinblick auf die Nutzbarkeit (Usability) und Zufriedenheit ihrer Besucher – eine möglichst schnelle Auslieferung der angeforderten Informationen gewährleisten.

Hierdurch ergeben sich Konsequenzen, die bei der Erstellung von Internetseiten berücksichtigt werden müssen. Unter Anderem hat das Einbinden von externen Seitenelementen, wie Graphiken, Stylesheets oder Scripten, die auf Seite des Clients (Webbrowsers) ausgeführt und dazu erst einmal vom Webserver heruntergeladen werden, Auswirkungen auf die Performance einer Website.

Aber auch aus Gründen der optimalen Auslastung des Servers ist die Optimierung einer Homepage im Hinblick auf kurze Latenzzeiten immer sinnvoll. Schliesslich bedeutet dies auch, dass mit Hilfe der vom Webserver vorgehaltenen Resourcen umso mehr Besucher versorgt werden können ohne dabei inakzeptable Wartezeiten in Kauf nehmen zu müssen.

Es gibt eine ganze Reihe von möglichen Vorgehensweisen, die zu einer Minimierung der HTTP-Requests führen. So können etwa mehrere Bilder in Form von Sprites zusammengefasst werden, so dass nur eine Anfrage an den Webserver gleich eine ganze Reihe von Bildern auf einen Streich abruft. Dies ist besonders dann sinnvoll, wenn es sich um zahlreiche und sehr kleine Bilder handelt, die jeweils nur einige Bytes groß sind.

Hier bedeutet die Speicherung in getrennt abgelegten und einzeln eingebundenen Bildern, dass ebenso viele Anfragen an den Server gestellt werden müssten, wie Objekte in die Seite eingebunden sind. Der Aufwand, der in diesem Fall auf die Kommunikation mit dem Server entfällt, ist bei dieser Vorgehensweise deutlich größer. Auch der Flaschenhals, der durch die seitens des Browsers beschränkte Anzahl an gleichzeitigen Verbindungen mit dem Server entsteht, wirkt sich sich negativ aus. Hinzu kommt die Tatsache, dass die Übertragung über das Netzwerk erst mit wachsenden Dateigrößen so richtig in Fahrt kommt – was natürlich nicht bedeutet, dass die Dateigröße, etwa beim Einbinden von Fotos, keine Rolle spielt.

Eine weitere Möglichkeit ist die, dass bestimmte Bilder – z.B. aus dem Seitentemplate, in dem die grundlegende Seitenstruktur festgelegt ist –, die grundsätzlich von allen Einzelseiten dargestellt werden müssen, direkt in das Stylesheet oder die HTML-Datei eingebettet werden. Zwar wird dies leider nicht von allen Webbrowsern unterstützt, allerdings kann der Server durch die der Technik mächtigen Clients entlastet werden. Neben Firefox und Opera unterstützen alle Mozilla-Varianten sowie Safari und auch der Konqueror bereits seit langem diese eingebetteten Objekte.

Dummerweise verarbeitet gerade der dezeit im Internet wohl am weitesten verbreitete Internet Explorer diese Technik bis einschließlich der Version 7 noch nicht. Ab der Version 8 des Browsers kann aber auch der Internet Explorer eingebettete Bilder verarbeiten. Künftig werden, im Zuge des schrittweisen Upgrades, also auch zunehmend Benutzer des Internet Explorers im Boot sein. Für die älteren Versionen müssen dann – wie so oft – eben Browserweichen herhalten oder Conditional-Comments genutzt werden, um die fehlenden Bilddaten nachzuladen.












  
© 2009-2024 Möglichkeiten zur Steigerung von Geschwindigkeit und Usability Ihrer eigenen Website