Geschwindigkeit FAQ

Wechseln zu: Navigation, Suche

Was ist mit "gleichzeitige Nutzer/innen" gemeint?

Wie in zahlreichen Beiträgen im Diskussionsforum Hardware and performance auf moodle.org betont ist, hängt die Serverlast zu einem bestimmten Zeitpunkt von der Zahl der gleichzeitigen Nutzer/innen ab. Sie hängt nicht von der Zahl der registrierten oder zu einem Zeitpunkt in Moodle angemeldeten Nutzer/innen ab. Der Begriff "gleichzeitige Nutzer/innen" bezeichnet Nutzer/innen, für die der Server zu einem bestimmten Zeitpunkt aktiv etwas tut: eine Webseite verarbeiten, die in PHP geschrieben ist, eine Datenbankabfrage durchführen, eine Datei ausliefern usw., siehe auch diesen Wikipedia-Artikel zu Nebenläufigkeit. Streng genommen handelt es sich um die Zahl der aktiven Werbserverprozesse (von denen jeder einzelne Speicher verbraucht) und die Zahl der Datenbankverbindungen.

Warum ist gleichzeitige Nutzer/innen kein geeignetes Maß?

Sie wissen in der Regel nicht, wie viele Nutzer/innen (besser: wie viele Anfragen) gleichzeitig auf den Server zugreifen. Wenn Sie z.B. 10000 registrierte Moodle-Nutzer/innen haben, dann kann es zu Spitzenzeiten passieren, dass 1000 Nutzer/innen mit Moodle arbeiten, Sie aber dennoch nicht abschätzen können, wie viele zu einem bestimmten Zeitpunkt eine Anfrage an den Server stellen.

  • Es hängt davon ab, was die Nutzer/innen in Moodle tun: Wenn sie z.B. einen Forumsbeitrag schreiben, vergeht einige Zeit für Lesen und Schreiben zwischen zwei aufeinanderfolgenden Anfragen; wenn sie ein PDF herunterladen, kann die Verarbeitung einer einzelnen Anfrage sehr lange dauern; bei einem Testversuch werden sie viele Anfrage innerhalb kurzer Zeit haben.
  • Es hängt auch von der Geschwindigkeit des Systems ab. Wenn Ihr System eine typische Seite in 0.1 Sekunden verarbeitet und 10 Personen innerhalb einer Sekunde eine Anfrage stellen, dann bedeutet das im Schnitt 1 gleichzeitige Anfrage. Wenn Ihr System jedoch 1 Sekunde zur Verarbeitung der Seite benötigt, dann bedeuten 10 Personen innerhalb einer Sekunde 10 gleichzeitige Anfragen.

Ein weiterer Grund dafür, dass die Zahl der gleichzeitigen Nutzer/innen ein ungeeignetes Maß ist, ist folgendes Beispiel: "Gleichzeitige Nutzer/innen" können eine große Datei herunterladen, was eine bestimmte Zeit in Abhängigkeit von der Netzwerkverbindung verbraucht. Es kann sein, dass der Server keine Probleme hat, 10 große PDFs an 10 gleichzeitige Nutzer/innen auszuliefern, während es große Probleme geben kann, wenn dieselben 10 gleichzeitigen Nutzer/innen permanent Anfragen an den Server senden, wenn sie gerade einen Testversuch durchführen.

Was ist ein geeignetes Maß für Geschwindigkeitsabschätzungen?

Die maximale Zahl der Zugriffe pro Sekunde (protokolliert in den Logdateien des Webservers, Zeilen in der Datenbank-Tabelle
mdl_log
o.ä.) ist ein geeigneteres Maß, um die Last des Servers abzuschätzen. Für einen Server, der neu aufgesetzt werden soll, sind diese Werte dennoch im Voraus schwer abzuschätzen.

Welche Hardware benötige ich für N gleichzeitige Nutzer/innen?

Lesen Sie zunächst im vorherigen Abschnitt, was wir unter N gleichzeitigen Nutzer/innen verstehen. Die Antwort auf die Frage lautet leider: "Das hängt davon ab": vom Betriebssystem, von der Software-Konfiguration (insbesondere der Konfiguration des Webservers und des Datenbankservers) und davon, was die Nutzer/innen in Moodle tun. Das schlechteste Szenario ist eine große Gruppe von Teilnehmer/innen, die alle gleichzeitig mit einem Testversuch in Moodle starten. Zum Glück verursachen Nutzer/innen, die nur eine Moodle-Seite lesen, keine Serverlast, solange sie nicht zur nächsten Moodle-Seite weiterklicken. Sehr grob geschätzt kann Moodle nur 10-20 gleichzetige Nutzer/innen pro Gigabyte Speicher verarbeiten. Moodle ist eine große Webanwendung, die schnell mehr als 50 MB (manchmal auch viel mehr) RAM pro Prozess benötigen kann. Wenn Sie eine sehr große Moodle-Site planen, empfehlen wir dringend, erst einen Pilot-Projekt zu starten und ausgiebige Geschwindigkeitstests durchzuführen.

Die Erfahrung zeigt, dass angehende Moodle-Nutzer/innen dazu neigen, die Zahl der gleichzeitigen Nutzer/innen gewaltig zu überschätzen und folglich erheblich höhere Kosten zu kalkulieren.

Was ist der einfachste Weg, die Geschwindigkeit zu verbessern?

Mehr Speicher kaufen!

Wie kann ich einen Benchmark für eine Moodle-Site durchführen?

Sie können Teile des Systems separat benchmarken: die Hardware (z.B. CPU, Festplattenzugriff), Webservergeschwindigkeit, Datenbankservergeschwindigkeit, Ausführung von PHP-Operationen usw. Detaillierte Informationen finden Sie im Artikel Geschwindigkeitsempfehlungen.

Es gibt jedoch keine einfache Formel, um aus den Benchmark-Ergebnissen auf die maximale Zahl der gleichzeitigen Nutzer/innen zu schließen. Es gibt ein PHP-Skript, siehe Performance perspectives - a little script, das in der Moodle-Community zirkuliert und eine grobe Abschätzung liefert. Die aktuelle Version dieses Skripts finden Sie im Anhnag zu diesem Diskussionsbeitrag: posting on 25. March 2011.

Achtung: Wenn Sie dieses Skript auf einem Produktivsystem laufen lassen, kann das unerwünschte Nebeneffekte bewirken. Es wird dringend empfohlen, das Skript nur auf einer Testinstallation laufen zu lassen.

Was sind PHP-Acceleratoren?

Informationen dazu finden Sie unter folgenden Links:

Wie setze ich Moodle als Cluster auf?

Siehe Skalierbarkeit.

Wie vervielfältige ich Moodle?

Siehe dieser Diskussionsbeitrag How to Replicate MOODLE ??!!

Mein Moodle ist sehr langsam, was kann ich tun?

Finden Sie zunächst heraus, "wie langsam" Ihr Moodle ist.

Als nächstes müssen Sie klären, ob es sich tatsächlich um ein Geschwindigkeitsproblem handelt oder ob etwas anderes nicht richtig funktioniert, z.B.:

  • Hardware
  • Korruptes Dateisystem, insbesondere Netzwerk-Dateisysteme
  • Speicherprobleme
  • Bug in Moodle
  • korrupte Moodle-Datenbank
  • Netzwerkprobleme (DNS, Firewall, ...)

Weitere Fragen:

  • Nutzen Sie einen eigenen Server oder einen Shared (Virtual) Server?
  • Wie viel RAM steht zur Verfügung?
  • Welchen Software Stack verwenden Sie? (Unix oder Windows, Apache oder IIS, MySQL, PostgreSQL oder SQL-Server, ...?)
  • Wie viele gleichzeitige Nutzer/innen können Sie unterstützen?
  • Welche Module / Aktivitäten von Moodle nutzen Sie?

Siehe auch Geschwindigkeitsempfehlungen.

Was sind die Server-Anforderungen für N Nutzer/innen?

Siehe dieser Diskussionsbeitrag A moodle setup for 10K simultaneous users.

Wie viele Nutzer/innen unterstützt meine Installation?

This is another way of asking the same question as above. Please move up.

Was ist der beste Webserver?

Das hängt davon ab, wen Sie fragen. Apache ist der am weitesten verbreitete Webserver auf Unix/Linux-Systemen. IIS ist der native Windows-Webserver, aber auch auf Windows-Systemen kann Apache verwendet werden. Immer gilt: Verwenden Sie die aktuellste Version, da sie vermutlich die beste Geschwindigkeit bietet. Es gibt weitere "Nischen-Webserver", wenn Sie sich für diese interessieren, kennen Sie sie vermutlich schon.

Soll ich einen 64-Bit-Server verwenden oder reicht ein 32-Bit-Server?

Die meisten Server heutzutage sind ohnehin 64-Bit-Server. Bei Desktop-Installationen: Wenn Sie die Wahl haben, sind 32-Bit-Systeme wahrscheinlich besser unterstützt.

Welchen Hosting-Provider empfehlen Sie?

Die Moodle-Partner sind vom Moodle Headquarter geprüft, sie verfügen über eine umfassende Moodle-Expertise und können umfangreichen Support anbieten. Sie bieten jedoch nicht immer die billigste Lösung, wenn Ihr Budget knapp bemessen ist (fragen Sie trotzdem nach!). Bei preiswertem "Shared Hosting" kann es passieren, dass nicht genügend Kapazitäten für Moodle bereitgestellt werden. Es gibt ganz verschiedene Möglichkeiten, und es hängt ganz wesentlich von Ihren Anforderungen ab. Siehe auch dieser Diskussionsbeitrag.

Siehe auch

Diskussionsbeiträge im Kurs Using Moodle auf moodle.org: