Apache2 mod_cache

Apache2 mod_cache

Beim Caching wir nicht für jeden Request immer wieder der komplette Response neu erstellt. Ziel ist es immer wieder benötigte Daten im Speicher zu behalten um schneller darauf zugreifen zu können. Apache2 unterscheidet dabei 2 unterschiedliche Methoden:

mod_disk_cache
Beim Disk Cache werden Daten auf der Festplatte zwischengespeichert. Das ist zwar langsam, jedoch hat der Webserver mehr davon zur Verfügung.
mod_mem_cache
Beim Memory Cache werden Daten im Hauptspeicher zwischengespeichert. Das ist natürlich maximal effizient, jedoch ist der Hauptspeicher üblicherweise begrenzt.

Ob das jeweilige Modul bereits installiert ist kann man ins mods-available Verzeichnis schauen.

[stextbox id=“bash“]ll /etc/apache2/mods-available | grep cache[/stextbox]
[stextbox id=“info“]-rw-r–r– 1 root root   62 Dec  3  2011 cache.load
-rw-r–r– 1 root root  887 Aug  2  2012 disk_cache.conf
-rw-r–r– 1 root root   89 Dec  3  2011 disk_cache.load
-rw-r–r– 1 root root   89 Dec  3  2011 file_cache.load
-rw-r–r– 1 root root  308 May 29 15:27 mem_cache.conf
-rw-r–r– 1 root root   87 Dec  3  2011 mem_cache.load[/stextbox]

Ob das jeweilige Modul bereits aktiv ist kann man ins mods-enabled Verzeichnis schauen.

[stextbox id=“bash“]ll /etc/apache2/mods-mods-enabled | grep cache[/stextbox]
[stextbox id=“info“]lrwxrwxrwx 1 root root   28 May 29 15:24 cache.load -> ../mods-available/cache.load
lrwxrwxrwx 1 root root   32 May 29 15:24 mem_cache.conf -> ../mods-available/mem_cache.conf
lrwxrwxrwx 1 root root   32 May 29 15:24 mem_cache.load -> ../mods-available/mem_cache.load[/stextbox]

Zum aktivieren des jeweiligen Caching Mod muss man lediglich das Modul laden und den Apache neu starten

[stextbox id=“bash“]a2enmod cache
a2enmod disk_cache
service apache2 restart[/stextbox]

[stextbox id=“bash“]a2enmod cache
a2enmod mem_cache
service apache2 restart[/stextbox]

Die Konfiguration der caching Module kann man man dann unter /etc/apache2/mods-enabled bearbeiten.

Hier ein Beispiel der /etc/apache2/mods-enabled/mem_cache.conf mit Änderungen

        CacheEnable mem /

#        MCacheSize 4096
# 1GB Cache statt 4MB
        MCacheSize 1024000000

#        MCacheMaxObjectCount 100
# 2000 Objekte statt nur 100
        MCacheMaxObjectCount 2000

        MCacheMinObjectSize 1

#        MCacheMaxObjectSize 2048
# maximal 64MB pro Objekt
        MCacheMaxObjectSize 6400000
  • MCacheSize
    Größe des Memory in KByte den der Cache verwenden darf
  • MCacheMaxObjectCount
    Anzahl der maximal zu Cachenden Objekte
  • MCacheMinObjectSize
    Minimale Größe in Byte eines Objekts, das in den Cache geladen wird
  • MCacheMaxObjectSize
    Maximale Größe in Byte die ein Objekt, das in den Cache geladen wird

Nach dem einschalten des Caches sollte auf jedenfall  eine Verbesserung der Performance bemerkt werden.

Schreibe einen Kommentar

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

*