Performance durch statischen Seitencache

von Moritur am 12. Januar 2015

Ich habe vor kurzem einen sehr interessanten Artikel gelesen: Stop Writing Stateful HTML.

Dieser Artikel hat mich so überzeugt, dass ich das Konzept auf unserer neusten Seite MeinHilfsmittel.de umgesetzt habe. Mit großem Erfolg!

Die Idee ist, bei jeder Seite (wo das sinnvoll möglich ist) jegliche Informationen die Nutzerspezifisch ist zu entfernen und diese anschließend per ajax nachzuladen.
Im konkreten Beispiel sind alle Seiten initial (bis auf den checkout) ohne Benutzerinformationen. Die Login Leiste mit Warenkorbinformation wird dann per ajax nachgeladen. Man könnte sicherlich auch eine Variante mit Hilfe von local storage / cookies implementieren. Die Seiten werden dann in unserem gulp build erzeugt und als html im Dateisystem abgelegt. Per nginx werden diese Seiten dann ausgeliefert, anstatt einen PHP Prozess zu befragen.

Die nginx Konfiguration kann dann z.B. so aussehen:

Die Performance ist dadurch extrem gut. Die initale Ladezeit beträgt nur noch ca. 30ms anstatt ca. 250ms.
Dadurch erreichen wir einen Speed Index von 900 im ersten Aufruf und 200(!) im zweiten Aufruf.
Außerdem werden natürlich Ressourcen gespart, da kein PHP Prozess mehr für diese Seiten nötig ist.

Was meinst du dazu?

Pflichtfeld.

Pflichtfeld. Wird nicht veröffentlicht.

Wenn du eine hast.