Setup:Installationsanleitung/Optimierungen/Caching: Unterschied zwischen den Versionen

K (1 Version importiert)
Keine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
 
Zeile 16: Zeile 16:
Erstellen Sie hierzu die Datei <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Directories.php und fügen Sie dort folgenden Inhalt ein:
Erstellen Sie hierzu die Datei <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Directories.php und fügen Sie dort folgenden Inhalt ein:


<source lang="php">
<syntaxhighlight lang="php">
<?php
<?php


$wgCacheDirectory = "$IP/cache";
$wgCacheDirectory = "$IP/cache";
</source>
</syntaxhighlightt


Speichern und schließen Sie die Datei.
Speichern und schließen Sie die Datei.


{{Hint
{{Hinweisbox|boxtype=Hinweis|Note text=Beachten Sie, dass das Verzeichnis "cache" in <code>&lt;installpath-bluespice&gt;</code> durch den Webserver beschreibbar sein muss. Nähere Informationen erhalten Sie auf der Seite [[Setup:Installationsanleitung/Sicherheitseinstellungen/Dateisystemrechte|Dateisystemrechte]].}}
|text=Beachten Sie, dass das Verzeichnis "cache" in <code>&lt;installpath-bluespice&gt;</code> durch den Webserver beschreibbar sein muss. Nähere Informationen erhalten Sie auf der Seite [[Setup:Installationsanleitung/Sicherheitseinstellungen/Dateisystemrechte|Dateisystemrechte]].}}


==Namensauflösung der Datenbank==
==Namensauflösung der Datenbank==
Zeile 32: Zeile 31:
Öffnen Sie hierzu <code>&lt;installpath-bluespice&gt;</code>/LocalSettings.php und suchen die Variable '''$wgDBserver'''. Die Zeile sollte im Idealfall lauten
Öffnen Sie hierzu <code>&lt;installpath-bluespice&gt;</code>/LocalSettings.php und suchen die Variable '''$wgDBserver'''. Die Zeile sollte im Idealfall lauten


<source lang="php">
<syntaxhighlight lang="php">
$wgDBserver = "127.0.0.1";
$wgDBserver = "127.0.0.1";
</source>
</syntaxhighlight>


Beachten Sie hierbei, dass die Rechte am MySQL auch entsprechend auf "127.0.0.1" vergeben sind.
Beachten Sie hierbei, dass die Rechte am MySQL auch entsprechend auf "127.0.0.1" vergeben sind.
Zeile 41: Zeile 40:
Erstellen Sie hierfür die Datei <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Memcached.php und fügen Sie dort folgenden Inhalt ein:
Erstellen Sie hierfür die Datei <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Memcached.php und fügen Sie dort folgenden Inhalt ein:


<source lang="php">
<syntaxhighlight lang="php">
<?php
<?php


Zeile 47: Zeile 46:
$wgSessionCacheType = CACHE_DB;
$wgSessionCacheType = CACHE_DB;
$wgMemCachedServers = [ "127.0.0.1:11211" ];
$wgMemCachedServers = [ "127.0.0.1:11211" ];
</source>
</syntaxhighlight>


Speichern und schließen Sie die Datei.
Speichern und schließen Sie die Datei.
Zeile 58: Zeile 57:
Dies kann in der php.ini geändert werden. Suchen Sie dort nach folgender Option und passen Sie diese an:
Dies kann in der php.ini geändert werden. Suchen Sie dort nach folgender Option und passen Sie diese an:


<source lang="php">
<syntaxhighlight lang="php">
memory_limit = 512M ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
memory_limit = 512M ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
</source>
</syntaxhighlight>


Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.
Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.
Zeile 69: Zeile 68:
Dieser muss zunächst in der php.ini aktiviert werden. Überprüfen Sie dort, ob das Modul eingebunden ist. Dies erfolgt über die Zeile
Dieser muss zunächst in der php.ini aktiviert werden. Überprüfen Sie dort, ob das Modul eingebunden ist. Dies erfolgt über die Zeile


<source lang="bash">
<syntaxhighlight lang="bash">
zend_extension=opcache.dll (Windows)
zend_extension=opcache.dll (Windows)
zend_extension=opcache.so (Linux)
zend_extension=opcache.so (Linux)
</source>
</syntaxhighlight>
{{Hint
{{Hint
|text=Beachten Sie unter Linux bitte zusätzlich die jeweiligen Vorgaben des jeweiligen Distributors zum Aktivieren von PHP-Modulen.}}
|text=Beachten Sie unter Linux bitte zusätzlich die jeweiligen Vorgaben des jeweiligen Distributors zum Aktivieren von PHP-Modulen.}}
Zeile 78: Zeile 77:
Nehmen Sie folgende Konfiguration des opcache in der php.ini vor. Im Regelfall sollten alle Optionen bereits vorhanden, aber mit Semikolon (''';''') am Zeilenanfang auskommentiert sein. Suchen Sie die jeweilige Option in der php.ini, entfernen das Semikolon am Zeilenanfang und passen Sie die Einstellungen wie folgt an:
Nehmen Sie folgende Konfiguration des opcache in der php.ini vor. Im Regelfall sollten alle Optionen bereits vorhanden, aber mit Semikolon (''';''') am Zeilenanfang auskommentiert sein. Suchen Sie die jeweilige Option in der php.ini, entfernen das Semikolon am Zeilenanfang und passen Sie die Einstellungen wie folgt an:


<source lang="bash">
<syntaxhighlight lang="bash">
opcache.enable=1
opcache.enable=1
opcache.memory_consumption=512 ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
opcache.memory_consumption=512 ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
Zeile 84: Zeile 83:
opcache.validate_timestamps=1
opcache.validate_timestamps=1
opcache.revalidate_freq=2
opcache.revalidate_freq=2
</source>
</syntaxhighlight>


Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.
Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.

Aktuelle Version vom 14. Dezember 2021, 13:21 Uhr



Dieses Dokument beschreibt diverse Caching-Optionen, um die Performance Ihrer BlueSpice-Installation zu erhöhen.

Hinweise zum Dokument

  • Beim Editieren von Konfigurationsdateien mit einem Texteditor müssen die Dateien in UTF-8 Kodierung ohne BOM (Byte Order Mark) gespeichert werden.
  • Der Platzhalter <installpath-bluespice> steht stellvertretend für den Pfad zu Ihrer BlueSpice-Installation, z.B. C:\bluespice\var\www (Windows bei Beachtung der Dokumentation "Ordnerstruktur unter Windows") oder /var/www/bluespice (Linux).
  • Der Platzhalter <tomcat-webapps> steht stellvertretend für den Pfad zum Webapps-Verzeichnis Ihres Tomcat-Servers, z.B. C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps (Windows) oder /var/lib/tomcat9/webapps (Linux).

Linux vs. Windows

Bitte beachten Sie generell, dass BlueSpice bei identischer Hardwareausstattung erfahrungsgemäß auf Linux-Servern performanter läuft als unter Windows-Servern.

Cache-Directory angeben

Dies zwingt BlueSpice, das Filesystem und nicht die Datenbank für einige interne Caches zu verwenden.

Erstellen Sie hierzu die Datei <installpath-bluespice>/settings.d/001-Directories.php und fügen Sie dort folgenden Inhalt ein:

<?php

$wgCacheDirectory = "$IP/cache";
</syntaxhighlightt

Speichern und schließen Sie die Datei.

{{Hinweisbox|boxtype=Hinweis|Note text=Beachten Sie, dass das Verzeichnis "cache" in <code>&lt;installpath-bluespice&gt;</code> durch den Webserver beschreibbar sein muss. Nähere Informationen erhalten Sie auf der Seite [[Setup:Installationsanleitung/Sicherheitseinstellungen/Dateisystemrechte|Dateisystemrechte]].}}

==Namensauflösung der Datenbank==
Sofern Sie dies nicht beim Setup von MediaWiki bereits beachtet haben sorgen Sie dafür, dass der Datenbankserver, sollte er auf dem selben Server wie BlueSpice liegen, möglichst über die IP angesprochen wird. Insbesondere Windows hat sehr oft Probleme beim Auflösen von "localhost".

Öffnen Sie hierzu <code>&lt;installpath-bluespice&gt;</code>/LocalSettings.php und suchen die Variable '''$wgDBserver'''. Die Zeile sollte im Idealfall lauten

<syntaxhighlight lang="php">
$wgDBserver = "127.0.0.1";

Beachten Sie hierbei, dass die Rechte am MySQL auch entsprechend auf "127.0.0.1" vergeben sind.

Memcached aktivieren

Erstellen Sie hierfür die Datei <installpath-bluespice>/settings.d/001-Memcached.php und fügen Sie dort folgenden Inhalt ein:

<?php

$wgMainCacheType = CACHE_MEMCACHED;
$wgSessionCacheType = CACHE_DB;
$wgMemCachedServers = [ "127.0.0.1:11211" ];

Speichern und schließen Sie die Datei.

[[File:{{{file}}}|center]] Voraussetzung hierfür ist ein installierter und konfigurierter Memcached-Server auf dem BlueSpice-Server. Informationen hierzu erhalten Sie auf der Seite Memcached.


PHP Memory Limit erhöhen

Ein höheres Speicherlimit von PHP führt zu einer schnelleren Ausführung. Dies kann in der php.ini geändert werden. Suchen Sie dort nach folgender Option und passen Sie diese an:

memory_limit = 512M ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''

Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.

Bytecode Cache in PHP aktivieren

PHP liefert den Bytecode Cache "opcache" mit aus.

Dieser muss zunächst in der php.ini aktiviert werden. Überprüfen Sie dort, ob das Modul eingebunden ist. Dies erfolgt über die Zeile

zend_extension=opcache.dll (Windows)
zend_extension=opcache.so (Linux)
[[File:{{{file}}}|center]] Beachten Sie unter Linux bitte zusätzlich die jeweiligen Vorgaben des jeweiligen Distributors zum Aktivieren von PHP-Modulen.


Nehmen Sie folgende Konfiguration des opcache in der php.ini vor. Im Regelfall sollten alle Optionen bereits vorhanden, aber mit Semikolon (;) am Zeilenanfang auskommentiert sein. Suchen Sie die jeweilige Option in der php.ini, entfernen das Semikolon am Zeilenanfang und passen Sie die Einstellungen wie folgt an:

opcache.enable=1
opcache.memory_consumption=512 ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
opcache.max_accelerated_files=5000
opcache.validate_timestamps=1
opcache.revalidate_freq=2

Nach dem Abspeichern und Schließen der php.ini muss der Webserver neu gestartet werden.

Deaktivieren der JobQueue

Dafür lesen Sie bitte den Abschnitt runJobs.php im Artikel über Cronjobs



Feedback zur Dokumentation ist im Community-Forum möglich.

Keine Kategorien vergebenBearbeiten

Diskussionen