Zum Inhalt springen

MediaWiki/Performance: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 68: Zeile 68:
== Erweiterungen ==
== Erweiterungen ==
; Ressourcenintensive Erweiterungen anpassen
; Ressourcenintensive Erweiterungen anpassen
Komplexe Erweiterungen wie ''Semantic MediaWiki (SMW)'' können beim Laden von Seiten zu einer erheblichen Serverbelastung führen
Komplexe Erweiterungen wie ''Semantic MediaWiki (SMW)'' können von Seiten zu erheblicher Serverbelastung führen
* https://hexshift.medium.com/step-by-step-guide-to-optimizing-mediawiki-performance-with-caching-and-profiling-391b5203d166
* https://hexshift.medium.com/step-by-step-guide-to-optimizing-mediawiki-performance-with-caching-and-profiling-391b5203d166


Zeile 75: Zeile 75:
* verhindert, dass komplexe semantische Abfragen bei jedem Besuch neu berechnet werden
* verhindert, dass komplexe semantische Abfragen bei jedem Besuch neu berechnet werden


; LocalSettings.php
''LocalSettings.php''
  $smwgEnableCache = true;
  $smwgEnableCache = true;



Version vom 16. Juni 2026, 09:19 Uhr

MediaWiki/Performance

Beschreibung

Ressourcen

Stellen Sie sicher, dass Ihrem Webserver und PHP genügend Arbeitsspeicher zugewiesen ist

CPU-Auslastung reduzieren
  • PHP OPcache aktivieren
  • Objekt-Caching
  • APCu/Memcached installieren
  • ressourcenintensive Bot-Crawler blockieren
Alternative Webserver

Nginx oder Lighttpd

  • Die Verwendung von Nginx oder Lighttpd als Webserver anstelle von Apache kann die Leistung stark frequentierter Websites erheblich verbessern
Links

PHP-Caching

PHP-Caching aktivieren (unbedingt erforderlich)

PHP kompiliert Code standardmäßig bei jeder Seitenanfrage neu.

OPcache

Stelle sicher, dass OPcache in deiner php.ini-Datei aktiviert ist.

  • Setzen Sie opcache.enable=1 und weisen Sie ausreichend Speicher zu (z. B. opcache.memory_consumption=128).
APCu

Installieren Sie die APCu-PHP-Erweiterung für schnelles, lokales Objekt-Caching.

Objekt- und Hauptcache

MediaWiki-Objekt- und Hauptcache konfigurieren

Verhindere, dass MediaWiki bei häufig abgerufenen Daten wiederholt auf die Datenbank zugreift. [1]* Öffne deine LocalSettings.php-Datei und füge Folgendes hinzu:

$wgMainCacheType = CACHE_ACCEL;
$wgParserCacheType = CACHE_ACCEL;
$wgSessionCacheType = CACHE_ACCEL;

Bots und Crawler

Bots und Crawler optimieren

Aggressive Suchmaschinen-Bots können dynamische Seiten (wie api.php oder index.php?action=history) indexieren und Ihre CPU überlasten.

Erstelle oder aktualisiere eine strenge robots.txt-Datei in deinem Hauptverzeichnis, um nicht-kanonische URLs und Systemseiten zu blockieren.

Beispielregeln
text User-agent:* 
Disallow: /wiki/Special: 
Disallow: /w/api.php Disallow: /w/index.php

Erweiterungen

Ressourcenintensive Erweiterungen anpassen

Komplexe Erweiterungen wie Semantic MediaWiki (SMW) können von Seiten zu erheblicher Serverbelastung führen

Abfrage-Caching

Abfrage-Caching bei SMW aktivieren

  • verhindert, dass komplexe semantische Abfragen bei jedem Besuch neu berechnet werden

LocalSettings.php

$smwgEnableCache = true;

Zähler

Unnötige Zähler Deaktiviere

Das Erfassen von Seitenaufrufen kann auf stark frequentierten Seiten zu einem sprunghaften Anstieg der CPU-Auslastung führen.

  • mediawikiwiki:Topic:Rncjbh4poqojjt9k

Wenn du keine Seitenstatistiken benötigst, kannst du den Seitenzähler deaktivieren, indem du Folgendes in LocalSettings.php einfügst:

$wgDisableCounters = true;

PHP-FPM / FastCGI

PHP-FPM / FastCGI optimieren

Wenn PHP-FPM-Prozesse

php-fpm.conf

Konfigurieren

  • php-fpm.conf
  • Pool-Konfiguration
pm.max_requests

um Prozesse zu aktualisieren, z. B.

pm.max_requests = 500
Skalierung

Anleitung zur Skalierung

Erweiterungen

Welche Erweiterungen (wie Semantic MediaWiki) sind aktiv?


Anhang

Siehe auch



Dokumentation

Projekt

  1. https://www.mediawiki.org/wiki/Manual:Varnish_caching