Jan-Christoph Gack

Bekanntlich kann auf kein Speichermedium annähernd so schnell zugegriffen werden wie auf den Arbeitsspeicher, das RAM. Ausreichend verfügbares RAM vorausgesetzt, ist Magentos /var/cache (oder nach Belieben auch das gesamte Verzeichnis /var ) geradezu prädestiniert dafür, in eben diesem gespeichert zu sein.

Genaugenommen kommt statt einer Ramdisk das zeitgemäßere tmpfs (Temporary File System) zum Einsatz. Ein entscheidender Vorteil einer tmpfs-Partition ist, dass die Größe des RAM, die sie belegt, variabel ist: Eine tmpfs-Partition belegt physisch immer nur so viel Arbeitsspeicher, wie sie aufgrund ihrer aktuellen Größe gerade braucht. Sie wächst quasi mit, bis zum Wert, der als erlaubtes Maximum definiert wurde.

Die im Web an vielen Stellen zu findende Syntax funktioniert übrigens nicht, da mit dieser das Device von Magento nicht beschreibbar ist. Man muss es explizit User und Gruppe www-data zuweisen (das bezieht sich auf Debian/GNU, Ubuntu Server und deren Derivate; bei anderen Distributionen entsprechend dem User und der Gruppe, unter welchem bzw. welcher der Webserver läuft). Und zwar so:

mount -t tmpfs -o size=1G,mode=0744,uid=www-data,gid=www-data tmpfs /var/www/ihr-host/var/cache/

In o.g. Beispiel wird der tmpfs-Partition eine maximale Größe von einem Gbyte zugewiesen. Erlaubt sind natürlich auch Werte im Mbyte-Bereich, z.B. 512M oder 800M etc.

Zu bedenken ist, dass Partition und ergo deren Inhalt nach einem Neustart weg sind. Soll die Partition nach einem Neustart automatisch gemountet werden, erreicht man dies durch einen Eintrag in /etc/fstab .

Manuell kann man die Partition bei Bedarf mit

umount tmpfs

unmounten.

2 Responses to “Magento: /var/cache als Ramdisk mounten”

  1. fwolf

    Und das passt mir gerade – obwohl ich nur mal so beiläufig bei dir drübergestöbert hab – recht gut in den Kram ..

    .. schließlich hab ich meine neue Kiste nicht umsonst mit 16 GB RAM ausgestattet – VMs fressen ja viel, aber soooo viel dann auch wieder nicht.

    Sprich: Sowas lässt sich als halbwegs erfahrener Power-User natürlich auch relativ einfach auf’s Desktop-Linux übertragen ;)

    cu, w0lf.

    Antworten
  2. JCG

    Hallo w0lf!

    RAM kann man natürlich niemals genug haben, insbesondere dann nicht, wenn man tmpfs-Partitionen nutzt. :-)

    Für Linux-Desktops klappt das natürlich auch sehr gut, dann allerdings sollten die Partitionen unbedingt in /etc/fstab eingetragen werden, damit sie bei jedem Neustart automatisch gemountet werden.

    Viele Grüße, c u
    JCG

    Antworten

Leave a Reply

Basic HTML is allowed. Your email address will not be published.

Subscribe to this comment feed via RSS