Manual:Cache/de

Diese Seite behandelt vieles zum Thema Zwischenspeicherung (engl.: Caching).

MediaWiki ist eine sehr komplexe Webanwendung, dies bedeutet dass es einige Zeit dauern kann, um Seiten darzustellen. Um diese Kosten zu mindern, installieren viele MediaWiki Administratoren eine von vielen Caching-Lösungen. Sie sind keineswegs zwingend, obwohl sie die Zeit um Seiten zu laden reduzieren können und Server-Auslastung zu verringern. Diese Seite ist in vier Abschnitte unterteilt, um alles zu zwischenspeichern, müssen Sie eine Lösung aus jeder Gruppe ermöglichen. Es ist sehr wahrscheinlich, dass Sie nicht zu zwischenspeichern brauchen, ermöglichen Sie einfach Dinge die Sie benötigen, bis Sie eine akzeptable Leistung haben.

Kurzversion: wir empfehlen die Verwendung von APC und memcached; für Interessierte, dass ist derzeit das was die Wikimedia Foundation für Wikipedia et al verwendet. Siehe "Wie macht man MediaWiki schnell" und "MediaWiki Leistungsabstimmung".

PHP-Zwischenspeicherung
PHP funktioniert durch die Erstellung einer PHP-Datei in Bytecode und dann diesen Bytecode ausführend. Der Prozess der Erstellung der Datei in Bytecode dauert einige Zeit. PHP-Beschleuniger arbeiten durch das Speichern des kompilierten Bytecode und es direkt auszuführen, verringert den Zeitaufwand für das Kompilieren von Code. Beispiele für PHP-Beschleuniger


 * APC (Alternative PHP Zwischenspeicher). Diesen gibt es als Paket aus vielen Linux-Distributionen (z.B. Ubuntu 10.04) oder von PECL, und wird empfohlen.
 * PHP-Beschleuniger
 * eAccelerator - Jede Version von eAccelerator wird für PHP-Zwischenspeicherung funktionieren, aber wenn Sie es auch für Objektzwischenspeicherung verwenden wollen, benötigen Sie Version 0.9.5 (neuere Versionen sind nicht kompatibel).  Unterstützung für eAccelerator wird ab MediaWiki 1.19 eingestellt.
 * XCache - Nach der Debian Installion mit apt-get install php5-xcache setze xcache.var_size auf >0M (z.B. 16M), sonst kann es zu einem Fehler führen.

MediaWiki muss nicht konfiguriert werden, um PHP zwischen zu speichern, und wird "einfach funktionieren", wenn Sie einen Cache installieren. Sie können mit phpinfo überprüfen, ob der Zwischenspeicher installiert und richtig konfiguriert ist. Weitere Informationen erhalten Sie von diesen Projekten, oder suchen Sie diese Informationen per Google.

Objekt-Zwischenspeicherung
Wenn MediaWiki eine Seite aufbaut, um sie einem Benutzer anzuzeigen, führt er Datenbankabfragen aus um viele verschiedene Stücke von Daten zu sammeln und fasst sie dann alle in der Seite zusammen. Objekt-Zwischenspeicherung erlaubt MediaWiki, diese kombinierten Objekte für den späteren Abruf zu speichern, um den Zeitaufwand für die Kommunikation mit der Datenbank und dem Seitenaufbau zu reduzieren. Dies ist wohl der wichtigste Cache für die meisten Installationen. MediaWiki kann die zwischengespeicherten Objekte in einer Reihe von verschiedenen Orten, einschließlich auf einem Dateisystem, in der Datenbank, oder in einem externen Zwischenspeicherungssystem wie Memcached, APC, eAccelerator, oder XCache zu speichern.


 * Auf einem einzelnem Server
 * If you have a PHP byte-code cache, see PHP caching above, you can easily use this to store all of the extra data. This is strongly recommended, and requires the following line in LocalSettings.php:
 * If you are unable to use such a cache, then you may be able to use memcached, see that page for details. This is considerably more complicated, but still very effective.
 * The other two types of object cache use a database for caching. This may (or may not) be better than nothing, but one of the previous two solutions should be tried first.
 * The other two types of object cache use a database for caching. This may (or may not) be better than nothing, but one of the previous two solutions should be tried first.

Bei Verwendung von CACHE_DBA werden diese in $wgTmpDirectory abgelegt. Dieses Verzeichnis muss beschreibbar sein.


 * Auf mehreren Servern
 * If you have multiple application servers running MediaWiki in a load-balancing configuration, you need to use memcached, detailed instructions are on that page.

If you set $wgMainCacheType then the values for $wgParserCacheType and$wgMessageCacheType will inherit it. You do not need to set those variables unless you plan on doing something very advanced.


 * Disabling caching

Siehe auch

 * Manual:Configuration settings/de
 * Cache Strategie
 * Wikipedia:Server
 * PHP Zwischenspeicherung und Optimierung
 * Manual:File cache/de - Optional simplistic scheme for caching the rendered HTML of article pages.
 * Manual:Varnish caching/de
 * Manual:Squid caching/de
 * How do I purge a cached page?
 * How do I completely disable caching?