Zuletzt bearbeitet vor 2 Monaten
von Margit Link-Rodrigue

MediaWiki:Common.css und Setup:Installationsanleitung/Optimierungen/Caching: Unterschied zwischen den Seiten

(Unterschied zwischen Seiten)
Keine Bearbeitungszusammenfassung
 
K (1 Version importiert)
 
Zeile 1: Zeile 1:
@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css);
{{DISPLAYTITLE:Caching}}
/* Das folgende CSS wird für alle Benutzeroberflächen geladen. */
__TOC__
table {font-size: var(--content-font-size);}
.wikitable > tr > th, .wikitable > tr > td, .wikitable > * > tr > th, .wikitable > * > tr > td {padding: 0.8em 0.4em;}
span.new::after { content: 'neu!'; vertical-align: super; background: #64b334; margin-left: 3px;font-size: 10px;padding: 2px 5px; border-radius: 50%;
color:#ffffff;}
.flexbox{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:stretch;align-content:stretch;}
.flexbox div{margin:5px;padding:2px 8px;text-align:center;background:#ececec}
.center > div.thumb {margin-top:2em}
#content .toctitle h2 {margin-right: 1em; display: inline;font-size: 1.4rem;}
.qtip {font-size: 1em;line-height: 1.4em;}


/*Themen*/
<br /><br />
.flexbox.themenhd div {background:#fff; border:1px solid #d8d8d9; padding:10px 20px; flex-basis:24%; text-align:left}
Dieses Dokument beschreibt diverse Caching-Optionen, um die Performance Ihrer BlueSpice-Installation zu erhöhen.
.flexbox.themenhd div [class*=" bi-"]::before {
    font-size: 1.6em;
    vertical-align: middle;
    background-color: #fff;
    padding: 6px;
    border-radius: 50%;
}
.flexbox.themenhd  div [class*=" bi-"]::before {font-size:2em; vertical-align:middle; background-color:#f1f3f9; padding: 10px; }
ul.smw-format.ul-format.alltopics-col {column-count: 3;}
/*Tours */
.nextstep {display: inline-block;padding: 6px;background: #36c;border-radius: 2px;color: #ffffff;font-weight: bold;}
#mw-content-text .nextstep a:not(.new), [class^="mw-content-"] .nextstep a:not(.new), #mw-content-text .nextstep a:link:not(.new), [class^="mw-content-"] .nextstep a:link:not(.new) {
    color: #ffffff;    font-weight: bold;}
#mw-content-text .nextstep a:not(.new):hover, #mw-content-text .nextstep a:link:not(.new):hover, [class^="mw-content-"] .nextstep a:link:not(.new):hover {
    color: #efefef;}
.nextstep a:not(.new)::after, .nextstep a:link:not(.new)::after {content: " \25B6";}


/*Main page*/
==Hinweise zum Dokument==
.flexbox-portal div > h2 span::before {vertical-align: text-bottom; size:1.1em;}
{{Setup-document-note}}
#maintopics ul {list-style: none!important;}
 
#maintopics li {padding-bottom:0.6em!important;margin-left: 12px!important;}
==Linux vs. Windows==
#mpbanner {background:#fff url(/w/nsfr_img_auth.php/f/fa/BlueSpice-Demo_Header.jpg) -90px no-repeat; padding-bottom: 20px; background-size: 1000px 122px;}
Bitte beachten Sie generell, dass BlueSpice bei identischer Hardwareausstattung erfahrungsgemäß auf Linux-Servern performanter läuft als unter Windows-Servern.
#mpbanner-byline {font-size:1.8em; color:#3e5389;line-height: 0.8rem; padding-top: 20px;}
 
#mpbanner-title {font-size:3.4em; color:#3e5389; line-height:1.2em; font-weight: 900;letter-spacing: 1px;}
==Cache-Directory angeben==
#maintopics h2 span::before {vertical-align: text-bottom;padding-bottom: 2px;}
Dies zwingt BlueSpice, das Filesystem und nicht die Datenbank für einige interne Caches zu verwenden.
 
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">
<?php
 
$wgCacheDirectory = "$IP/cache";
</source>
 
Speichern und schließen Sie die Datei.
 
{{Hint
|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
 
<source lang="php">
$wgDBserver = "127.0.0.1";
</source>
 
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 <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Memcached.php und fügen Sie dort folgenden Inhalt ein:
 
<source lang="php">
<?php
 
$wgMainCacheType = CACHE_MEMCACHED;
$wgSessionCacheType = CACHE_DB;
$wgMemCachedServers = [ "127.0.0.1:11211" ];
</source>
 
Speichern und schließen Sie die Datei.
 
{{Hint
|text=Voraussetzung hierfür ist ein installierter und konfigurierter Memcached-Server auf dem BlueSpice-Server. Informationen hierzu erhalten Sie auf der Seite [[Setup:Installationsanleitung/Systemvorbereitung/Linux/Memcached|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:
 
<source lang="php">
memory_limit = 512M ''(entsp. 512 MB - je nach verfügbarem Arbeitsspeicher variabel)''
</source>
 
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
 
<source lang="bash">
zend_extension=opcache.dll (Windows)
zend_extension=opcache.so (Linux)
</source>
{{Hint
|text=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:
 
<source lang="bash">
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
</source>
 
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 [[Setup:Installationsanleitung/Optimierungen/Cronjobs#runJobs.php|runJobs.php im Artikel über Cronjobs]]
 
[[de:{{FULLPAGENAME}}]]
[[en:Setup:Installation_Manual/Optimization/Caching]]

Version vom 14. Dezember 2021, 13:15 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";

Speichern und schließen Sie die Datei.

[[File:{{{file}}}|center]] Beachten Sie, dass das Verzeichnis "cache" in <installpath-bluespice> durch den Webserver beschreibbar sein muss. Nähere Informationen erhalten Sie auf der Seite 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 <installpath-bluespice>/LocalSettings.php und suchen die Variable $wgDBserver. Die Zeile sollte im Idealfall lauten

$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