Minimum Cache Lifetime in Drupal 7 verlängern

Drupal 7 bietet mit Bordmitteln ein eigenes Caching, das jedoch leider für Websites mit wenig Traffic oder (vorübergehend) nicht weiter entwickelte Projekte einen zu kleinen Wertebereich für die minimale Lebensdauer der Cache-Seiten erlaubt. Dieser Artikel zeigt wie man das beheben kann und warum es wichtig ist, es zu tun.

„At Google we’re obsessed with speed.”

Google legt auf Geschwindigkeit großen Wert: „Schnelle Websites erhöhen die Zufriedenheit der Nutzer und verbessern die Gesamtqualität des Webs, insbesondere für Nutzer mit einer langsamen Internetverbindung.” Möglicherweise wird Google in Zukunft die Geschwindigkeit von Websites direkt in sein Suchmaschinen-Ranking einfließen lassen. Indirekt wirkt sie sich heute schon aus, denn Google registriert und bewertet die Ladeabbrüche, wenn genervte Besucher das Laden einer langsamen Webseite nicht mehr abwarten wollen und auf den Zurück-Button, zur Google-Suche klicken.

Das sollte für Drupal-Admins Grund genug sein, sich das Caching genauer anzusehen, insbesondere da dynamisch mittels eines Content Management Systems generierte Webseiten gegenüber statischen ohnehin einen prinzipiellen Geschwindigkeitsnachteil aufweisen.

Caching in Drupal 7

Drupal 7 bringt out-of-the-box ein Caching mit sich, man findet die Einstellungen dazu in Administration » Configuration » Development » Performance. Entscheidend ist der Wert für Minimum Cache Lifetime. Wählt man ihn zu hoch, dauert es sehr lange, bis Änderungen an der Website für Besucher sichtbar werden. Wählt man ihn zu kurz, muss das CMS die jeweilige Seite öfter neu generieren als es notwendig wäre – mit den entsprechenden Geschwindigkeitseinbußen.

Caching in Drupal 7

Leider lässt Drupal 7 nur einen Wertebereich zwischen einer Minute und einem Tag zu – was für stark besuchte Websites, die häufig aktualisiert werden, ausreichend ist. Für kleine Homepages, die selten aktualisiert oder (vorübergehend) nicht weiter entwickelt werden, ist die Begrenzung auf einen maximal 24 Stunden gültigen Cache unbefriedigend.

Der Wertebereich kann jedoch einfach ausdehnt werden. In modules/system/system.admin.inc muss dazu folgende Zeile modifiziert werden:

$period = drupal_map_assoc(array(0, 60, 180, 300, 600, 900, 1800, 2700, 3600, 10800, 21600, 32400, 43200, 86400), 'format_interval');

Das in Klammern aufgeführte Array ist der fragliche Wertebereich, jeweils in Sekunden und durch Kommata getrennt. Gewünschte zusätzliche Werte können nach Belieben hinzugefügt werden. Beispielsweise erlaubt folgende Einstellung, die Minimum Cache Lifetime auf eine Woche und einen Monat auszudehnen:

$period = drupal_map_assoc(array(0, 60, 180, 300, 600, 900, 1800, 2700, 3600, 10800, 21600, 32400, 43200, 86400, 604800, 2592000), 'format_interval');

Caching in Drupal 7

Share on Facebook Share on Twitter Post to Delicious! Post to Diaspora!
Marc Stenzel

Über Marc Stenzel

Marc Stenzel ist Inhaber der New Media Agentur media deluxe sowie freiberuflich als Marketing- und Projektmanager Online, Dozent und Fachjournalist (DFJV) tätig. Marc Stenzel bloggt hier über aktuelle Themen aus dem fachlichen und räumlichen Umfeld des Unternehmens - mal sachlich, mal humorvoll:
Dieser Beitrag wurde unter CMS Wissen abgelegt und mit , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Kommentare sind geschlossen.