Blog Benchmark

Vor etwas über einer Woche kam mir der Gedanke, meine Webseite etwas zu entschlacken, da mir die Ladezeiten sehr lang vorkamen. Und so wie es aussieht, war ich mit dem Gedanken im Raum Hamburg nicht allein. Durch einen glücklichen Zufall hat Fabian von nodomain.cc ein kleines Tutorial über den Reverse Proxy varnishd in sein Blog geschrieben, dass ich erst einmal eins-zu-eins ausprobiert habe. Eine weitere Möglichkeit seinen Blog zu beschleunigen ist der W3 Total Cache, welches als Plugin für WordPress daher kommt. Aber von vorn.

Zuerst habe ich das Blog entschlackt. Plugins, die ich nicht benötige, flogen raus. Damit halbierte sich die Ladezeit der Seite von etwa 8 Sekunden auf knapp unter 4 Sekunden. Aber im Zeitalter von DSL immer noch eine halbe Ewigkeit.

Danach installierte ich varnishd. Achtung: varnishd kann man nur auf einem eigenen Server nutzen. Die Ladezeit der Seite verkürzte sich auf rasend schnelle 1,5 Sekunden. Weiter wollte ich den Durchsatz des Webservers messen. Mit dem varnishd Proxy schaffte der Webserver 322 Anfragen pro Sekunde. Ohne varnishd packt der Server gerade einmal 1,8 Anfragen pro Sekunde. Letzten Wert finde ich dramatisch schlecht, aber nachdem ich einige andere bekannte Blogs gebenchmarkt habe, muss ich sagen, dass diese auch nicht mehr Durchsatz haben. Eher sogar weniger. Rühmliche Ausnahme ist der Ad, der auf gute 7 Anfragen pro Sekunde kommt.

Das W3 Total Cache Plugin beschert ähnliche Werte, wie der varnishd Reverse-Proxy, aber die Installation ist sehr viel einfacher. Weiter benötigt man auch keinen eigenen Server mit root-Zugang. Mit dem aktivierten Plugin werden 307 Anfragen pro Sekunde durch die Leitung geschaufelt. Der W3 Total Cache stellt also eine sehr gute Alternative zum varnishd dar.

Die Nachteile vom varnishd, sowie vom W3 Total Cache sollte man nicht verschweigen. Beide cachen. Dadurch kommt auch der enorme Geschwindigkeitszuwachs zustande. Cachen heisst soviel, dass die Seite einmal generiert wird und dann für eine vorgegebene Zeit immer wieder aus dem Zwischenspeicher abgerufen wird.

Damit varnishd sein volles Potenzial ausspielen kann, werden auf dem Weg zum Browser alle Cookies ausgefiltert. Bei mir ist es aber so, dass sich einige weniger User einloggen und dann in meiner Gallery ein paar Fotos mehr sehen, die nicht für alle Augen bestimmt sind. Das fällt mir dem varnishd erst einmal weg.

Das ganze cachen hat noch einen Nachteil. Dafür eine eine kurze Erklärung. Wenn bei mir ein User über eine Suchmachine kommt, bekommt er eine Meldung eingeblendet, die dem User erklärt, woher er kommt und wonach er gesucht hat (kann ja sein, dass er das schon wieder vergessen hat). Also, wenn der User von einer Suchmachine kommt, in dem Moment die Seiten durch die Cache-Software neu generiert wird, dann bekommt der User diese Meldung zu sehen. Aber auch nur dann. Weiter bekommen dann aber auch alle anderen User genau die gleiche Meldung zu sehen, auch wenn diese nicht von der Suchmachine kommen. Und das solange, bis die Gültigkeitsdauer des caches abgelaufen ist.

Oder kurz ausgedrückt: Die Seite ist nicht mehr so dynamisch, wie ich es mir vorstelle!

Ich habe erst einmal den W3 Total Cache nur in einer sehr abgespeckten Konfiguration laufen und lebe gerade mit nur 1,8 Request pro Sekunde. Weiter muss ich sehen, ob ich meine Seite nicht so umbaue, dass ich mit den Nachteilen des Cachings leben kann. Weiter werde ich mir, wenn wieder etwas mehr Zeit da ist, die Möglichkeiten von varnishd genauer ansehen, ob darüber nicht mehr zu machen ist.

2 Kommentare » Schreibe einen Kommentar

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.