MediaWiki/Jobs: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(29 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Die '''Jobwarteschlange''' verwaltet die Aufgaben, die MediaWiki im Hintergrund ausführt
Mediawiki-'''Jobwarteschlange''' - Verwaltet Aufgaben, die MediaWiki im Hintergrund ausführt


;Beispiel
== Beschreibung ==
* Eine Vorlage wird geändert.
Die Job-Warteschlange ist eine Datenbanktabelle (Job), die eine Zeile für jeden Job enthält.
* Angenommen, jemand fügt einer Vorlage ein Kategorie-Tag hinzu – das bedeutet, dass alle Seiten, die diese Vorlage enthalten, dieser Kategorie hinzugefügt werden müssen.  
* Diese werden sequenzieller ausgeführt
** Dieser Vorgang kann nicht auf einmal durchgeführt werden
* sobald ein Job ausgeführt wird, wird seine Zeile gelöscht.
*** da dies den zu sehr verlangsamen Server könnte
* Jobs werden jedes Mal ausgeführt, wenn das Wiki einen Seitentreffer erhält.
* Stattdessen wird der Prozess in „Jobs“ zerlegt, die in eine „Job Queue“ gestellt werden
** diese Jobs werden dann geordnet ausgeführt.  


;Job-Warteschlange
; Beispiel
* Hinter den Kulissen ist die Job-Warteschlange wirklich nur eine Datenbanktabelle namens "Job", die eine Zeile für jeden Job enthält.  
Einer Vorlage wird Kategorie-Tag hinzugefügt
** Diese Jobs werden in sequenzieller Reihenfolge ausgeführt, und sobald ein Job ausgeführt wird, wird seine Zeile gelöscht.  
* Alle Seiten, die diese Vorlage enthalten, müssen aktualisiert werden.
* Jobs werden jedes Mal ausgeführt, wenn das Wiki einen Seitentreffer erhält.
* Um Server und Wiki nicht zu verlangsamen, wird diese Aufgabe im Hintergrund nach und nach ausgeführt.
* Standardmäßig wird bei jedem Treffer ein Job ausgeführt, aber diese Zahl kann geändert werden, um die Ausführung von Jobs langsamer oder schneller zu machen, indem der Wert von $wgJobRunRate geändert wird.  
 
** Um etwa die Ausführung von Jobs zehnmal schneller zu machen, würden Sie Folgendes zu LocalSettings.php hinzufügen:  
; Job-Warteschlange
  $wgJobRunRate = 10;  
 
== Konfiguration ==
Standardmäßig wird bei jedem Treffer ein Job ausgeführt
* diese Zahl kann geändert werden, um die Ausführung von Jobs langsamer oder schneller zu machen, indem der Wert von $wgJobRunRate geändert wird.
* Um etwa die Ausführung von Jobs zehnmal schneller zu machen, würden Sie Folgendes zu LocalSettings.php hinzufügen:
  $wgJobRunRate = 10;
* Um es zehnmal langsamer zu machen, würden Sie den Wert auf 0,1 setzen.
* Um es zehnmal langsamer zu machen, würden Sie den Wert auf 0,1 setzen.
* Sie können nicht wirklich einen Bruchteil eines Jobs ausführen – stattdessen legt ein Bruchteil die Wahrscheinlichkeit fest, dass ein Job zu einem bestimmten Zeitpunkt ausgeführt wird.


;runJobs.php
== Anwendungen ==
Sie können auch veranlassen, dass Jobs automatisierter ausgeführt werden, anstatt nur darauf zu warten, dass sie ausgeführt werden  
=== runJobs.php ===
* Dies geschieht durch Aufrufen des Skripts runJobs.php im MediaWiki- <tt>/maintenance </tt>.  
Sie können auch veranlassen, dass Jobs automatisierter ausgeführt werden, anstatt nur darauf zu warten, dass sie ausgeführt werden
* Sie können sogar einen Cron-Job erstellen, um runJobs.php regelmäßig auszuführen – sagen wir einmal am Tag.  
* Dies geschieht durch Aufrufen des Skripts runJobs.php im MediaWiki- <tt>/maintenance </tt>.
* Sie können sogar einen Cron-Job erstellen, um runJobs.php regelmäßig auszuführen – sagen wir einmal am Tag.
** Es gibt verschiedene Parameter, die runJobs.php annehmen kann
** Es gibt verschiedene Parameter, die runJobs.php annehmen kann
*** z. B. das Festlegen der maximalen Anzahl auszuführender Jobs oder, was vielleicht noch wichtiger ist, die Art des auszuführenden Jobs.  
*** z.&nbsp;B.&nbsp; das Festlegen der maximalen Anzahl auszuführender Jobs oder, was vielleicht noch wichtiger ist, die Art des auszuführenden Jobs.
*** Um letzteres zu ermöglichen, hat jeder Auftragstyp einen eigenen Kennungsnamen, der in der Datenbank zu finden ist.  
*** Um letzteres zu ermöglichen, hat jeder Auftragstyp einen eigenen Kennungsnamen, der in der Datenbank zu finden ist.
* Alle Parameter für runJobs.php können Sie hier nachlesen: [https://www.mediawiki.org/wiki/Manual:RunJobs.php https://www.mediawiki.org/wiki/Manual:RunJobs.php]
* Alle Parameter für runJobs.php können Sie hier nachlesen: [https://www.mediawiki.org/wiki/Manual:RunJobs.php https://www.mediawiki.org/wiki/Manual:RunJobs.php]


Zusätzlich zum MediaWiki-Kern können Erweiterungen auch ihre eigenen Jobs erstellen.
[[Kategorie:MediaWiki/Verwaltung]]
* Einige Erweiterungen, die dies tun, sind Data Transfer, DeleteBatch, Nuke und Replace Text.
 
[[Kategorie:Wiki:Verwaltung]]

Aktuelle Version vom 1. Oktober 2024, 20:19 Uhr

Mediawiki-Jobwarteschlange - Verwaltet Aufgaben, die MediaWiki im Hintergrund ausführt

Beschreibung

Die Job-Warteschlange ist eine Datenbanktabelle (Job), die eine Zeile für jeden Job enthält.

  • Diese werden sequenzieller ausgeführt
  • sobald ein Job ausgeführt wird, wird seine Zeile gelöscht.
  • Jobs werden jedes Mal ausgeführt, wenn das Wiki einen Seitentreffer erhält.
Beispiel

Einer Vorlage wird Kategorie-Tag hinzugefügt

  • Alle Seiten, die diese Vorlage enthalten, müssen aktualisiert werden.
  • Um Server und Wiki nicht zu verlangsamen, wird diese Aufgabe im Hintergrund nach und nach ausgeführt.
Job-Warteschlange

Konfiguration

Standardmäßig wird bei jedem Treffer ein Job ausgeführt

  • diese Zahl kann geändert werden, um die Ausführung von Jobs langsamer oder schneller zu machen, indem der Wert von $wgJobRunRate geändert wird.
  • Um etwa die Ausführung von Jobs zehnmal schneller zu machen, würden Sie Folgendes zu LocalSettings.php hinzufügen:
$wgJobRunRate = 10;
  • Um es zehnmal langsamer zu machen, würden Sie den Wert auf 0,1 setzen.

Anwendungen

runJobs.php

Sie können auch veranlassen, dass Jobs automatisierter ausgeführt werden, anstatt nur darauf zu warten, dass sie ausgeführt werden

  • Dies geschieht durch Aufrufen des Skripts runJobs.php im MediaWiki- /maintenance .
  • Sie können sogar einen Cron-Job erstellen, um runJobs.php regelmäßig auszuführen – sagen wir einmal am Tag.
    • Es gibt verschiedene Parameter, die runJobs.php annehmen kann
      • z. B.  das Festlegen der maximalen Anzahl auszuführender Jobs oder, was vielleicht noch wichtiger ist, die Art des auszuführenden Jobs.
      • Um letzteres zu ermöglichen, hat jeder Auftragstyp einen eigenen Kennungsnamen, der in der Datenbank zu finden ist.
  • Alle Parameter für runJobs.php können Sie hier nachlesen: https://www.mediawiki.org/wiki/Manual:RunJobs.php