Inhalt:

SMF: Memcached als PHP-Beschleuniger nutzen..

Wer ein SMF auf einem eigenständigen Server betreibt und auf dem Server Root-Rechte hat kann das SMF durch Installation eines PHP-Beschleunigers deutlich beschleunigen. Bis vor ein paar Stunden hatte ich hier den eAccelerator installiert, habe aber nun auf den Beschleuniger "memcached" gewechselt. Memcached hat, wie der Name schon sagt, den Vorteil, daß er den Memory ("Arbeitsspeicher") des Servers benutzt und dort die Daten zwischenspeichert. Im Vergleich zu einem Disk-basierten Cache ist er damit erheblich schneller, solange der Server über genügend Arbeitsspeicher verfügt.

Die Installation unter Debian ist in ein paar Minuten erledigt, zunächst brauchen wir dazu einen Shell-Zugang. In der Shell installieren wir dann den memcached-Dienst mit:
apt-get install memcachedTheoretisch ist der Dienst damit quasi betriebsbereit, allerdings hat unser PHP davon noch keinen blassen Schimmer. Also installieren wir noch die PHP-Extension php5-memcache:
apt-get install php5-memcacheAnmerkung: man kann natürlich auch beide gleichzeitig installieren, aus Gründen der Übersichtlichkeit mache ich es hier bewusst getrennt.

Jetzt editieren wir die memcached.conf und sagen memcached, dass er auf lokal installierte PHP-Anwendungen lauschen soll.
vi /etc/memcached.confin die memcached.conf fügen wir folgende Zeile ein:

-l 127.0.0.1dann speichern wir mit wq! die Konfiguration ab und starten den memcached-Daemon neu:
/etc/init.d/memcached restartwir überprüfen kurz, ob memcached nun läuft, dazu in der Shell einfach:
ps aux | grep memcachedabschicken, die Ausgabe sollte dann eine Zeile ähnlich dieser hier ausgeben:
root      5662  0.0  0.5  12084 11020 ?        S    Dec04   0:00 /usr/bin/memcached -m 64 -p 11211 -u root -l 127.0.0.1
Jetzt haben wir es fast geschafft, zunächst müssen wir den Webserver neu laden, damit die php-Erweiterung php5-memcache geladen wird, da die meisten das SMF unter Apache betreiben werden hier ein enstsprechendes Beispiel:
/etc/init.d/apache2 reloadin der Ausgabe vom phpinfo(); sollte sich nun folgende Zeilen finden:

Den Abschluss bildet die Konfiguration des SMF, dazu gehen wir ins Admin-Interface unter den Punkt: Configuration - Server-Settings - Caching:

Hier prüfen wir unter 1) zunächst, ob memcached korrekt erkannt wurde. Ist das der Fall geben wir unter 2) den Server an (in unsererm Fall einfach localhost) und speichern dann mit 3) ab.

In der memached.conf lassen sich noch einige andere Dinge konfigurieren, z.B. wieviel Arbeistspeicher des Servers zum Caching genutzt wird. Das ist jedoch sehr stark abhängig von der Größe des SMF, von der verwendeten Hardware des Servers etc. Da heisst es einfach: ausprobieren.

« Letzte Änderung: 11.12.2010 11:30 »

Kommentar(e)

Kommentar eintragen

Wer Kommentare hinterlassen will muss registriert sein ...

Seiten: [1]