Zum Inhalt springen

MediaWiki/Performance: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 88: Zeile 88:
== PHP-FPM / FastCGI ==
== PHP-FPM / FastCGI ==
; PHP-FPM / FastCGI optimieren
; PHP-FPM / FastCGI optimieren
Wenn deine PHP-FPM-Prozesse aufgrund hohen Datenverkehrs übermäßig viel CPU-Leistung beanspruchen, begrenze die Laufzeit jedes Prozesses, bevor er recycelt wird, um Speicher freizugeben.  
Wenn PHP-FPM-Prozesse
* [[mediawikiwiki:Topic:U1sl12b4w1gkbh2k]]
* aufgrund hohen Datenverkehrs
* https://serverfault.com/questions/397482/need-help-trouble-shooting-high-cpu-usage-by-php-fpm
* übermäßig viel CPU-Leistung beanspruchen
* begrenze die Laufzeit jedes Prozesses, bevor er recycelt wird, um Speicher freizugeben.  
** [[mediawikiwiki:Topic:U1sl12b4w1gkbh2k]]
** https://serverfault.com/questions/397482/need-help-trouble-shooting-high-cpu-usage-by-php-fpm


; php-fpm.conf
; php-fpm.conf
Konfigurieren Sie in Ihrer <code>php-fpm.conf</code> oder Pool-Konfiguration <code>pm.max_requests</code>, um Prozesse zu aktualisieren (z. B. <code>pm.max_requests = 500</code>).
Konfigurieren
* php-fpm.conf
* Pool-Konfiguration  
pm.max_requests
um Prozesse zu aktualisieren, z. B.  
pm.max_requests = 500


; Skalierung
; Skalierung

Version vom 16. Juni 2026, 09:15 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 beim Laden von Seiten zu einer erheblichen 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