Webperformance und Optimierungspotential

Geschreiben von Marcus KimpenhausaufAug 23, 2007 in entwicklung |

Eigentlich bin ich vor ein paar Tagen eher zufällig über dieses Thema gestolpert, als ich auf einem meiner Lieblings-Blogs (Coding Horror) über diesen Artikel gestolpert bin.

Man findet viele Webpräsenzen und auch gerade WordPress mausert sich ja immer mehr Richtung CMS. Viele Menschen tragen viel dazu bei – aber auch das verursacht viele Unterschiede in der Entwicklung. Ich denke ein gutes Beispiel stellt mein eigenes Tagebuch dar – da auch hier die Ladezeiten (bedingt durch eine große Anzahl Plugins) zu wünschen übrig lassen. Bis dato hat es mich zwar gestört, aber ich habe mich nie wirklich damit beschäftigt – obwohl ich neulich noch zu einem Freund sagte, dass für eine erfolgreiche Plattform mindestens die beiden Dinge – Useability und Performance von Nöten wären, um akzeptiert zu werden, erfülle ich auf meinen Seiten eben diese Kriterien doch selbst nicht einmal. Nun gut – als ich über genannten Artikel stolperte – hab ich mich dann doch mal hingesetzt und YSlow als Firebug-Erweiterung installiert und für mein Tagebuch ausgeüfhrt. Naja – das Ergebnis war wirklich schockierend und noch schlechter als erwartet habe. Gesamt-Note: F (nach amerikanischen System entsprechend einer 5,0)

Um das ganz ergebnis mal in Bilder zu packen – denn die sagen bekanntlich mehr als 1.000 Worte:

YSlow-Ergebnis:

Firebug-Net-Ergebnis:

Was kann ich also tun, um dieses schlechte Verhalten zu verbessern? Unter http://www.webperformance.org/ findet man einige Ansatzpunkte. u.a. GZIP-Komprimierung des Inhaltes. WordPress bietet dies zwar im Admin-Panel als Schalter an, es ist aber anzumerken, dass die Komprimierung somit PHP-seitig geschieht und CSS- sowie JavaScript-Dateien, welche sich auch hervorragend dazu eigenen, nicht komprimiert werden. Für alle die Apache 2.x einsetzen gibt es mode_deflate (unter Apache 1.3.x sollte man auf mod_gzip setzen), welches die Komprimierung durchführt und somit alle nötigen Dateien komprimiert.

Um zusätzlich noch Bandbreite bei der Übertragung zu sparen und die Anzahl der Requests gegen den Server zu reduzieren, eignen sich folgende Werkzeuge sicher sehr gut.

  1. CSSTidy – ein OpenSource CSS Parser und Optimierer. Die Möglichkeit der Online-Komprimierung der eigenen CSS-Dateien steht dort zur Verfügung.
  2. JS-Builder – von Google (leider nur unter Windows lauffähiger) entwickelter JavaScript Komprimierer, der mehrere einzelne JavaScript-Files zu einem zusammenzieht und dieses ‘Gesamt-File’ komprimiert.

Zu beiden Tools sei angemerkt, dass diese die Dateien für Menschen recht unlesbar machen, da sie den gesamten Inhal in einen langen String zusammenziehen – daher sollte man, wenn man an diesen Dateien aktiv entwickelt, eine Developer- und eine komrpimierte Release-Variante vorsehen.

Allein das Einschalten des mode_deflate-Moduls brachte schon erstaunliche Ergebnisse.

Ich werde mich nun nach und nach der 13. Punkte-Liste annehmen und die genannten Tools zum Einsatz bringen und hoffe somit von dem (F) zu einer besseren Bewertung zu gelangen ;)

Abschließend noch 2 Seiten, welche HTTP-Analyse Werkzeuge bereitstellen:

  1. port80 software
  2. PipeBoost

Schlagwörter:, , ,

1 Kommentar

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Get Adobe Flash playerPlugin by wpburn.com wordpress themes

Copyright © 2005-2010 marcus' tagebuch All rights reserved.
Desk Mess Mirrored v1.6 theme from BuyNowShop.com.