Hochleistungshosting für WordPress LearnDash

Veröffentlicht: 2018-12-21

WordPress LearnDash ist wohl eine der erfolgreichsten E-Learning-Plattformen in der WordPress LMS-Welt. Es bietet erweiterte Funktionen für die Kurserstellung, Monetarisierung durch die Integration von Zahlungsgateways und die Verwaltung von Benutzerprofilen, Gruppen und Kurszuweisungen. Es funktioniert auch auf dem Handy.

Obwohl LearnDash ein führender Anbieter ist, ist es sehr ressourcenintensiv. Anwendungen, die personalisierte Inhalte in Echtzeit dynamisch rendern müssen, wie z. B. ein LMS (Learning Management System), erfordern von Natur aus, dass Inhalte weitgehend ungecacht sind und Benutzer beim Backend angemeldet sind. LearnDash ist keine Ausnahme von diesem inhärenten Problem.

In diesem Beitrag werden wir sehen, warum WordPress-Hosting-Anbieter nicht viel tun können, außer die CPU-Leistung anzupassen, die für LearnDash erforderlich ist, um ordnungsgemäß zu funktionieren, und wie Pressidium diese allgemeinen Leistungsprobleme angeht.

Wie ist WordPress LearnDash ressourcenintensiv?

Unabhängig davon, ob Sie eine E-Learning-Site mit geringem oder hohem Datenverkehr haben, werden Sie technische Probleme haben, sobald Sie anfangen, Anforderungen an sie zu stellen. Dies kann die Anzahl der registrierten Benutzer, die Anzahl der Kurse, die Anzahl der gleichzeitig aktiven Benutzer oder eine beliebige Kombination davon sein. Diese Probleme können von vollständiger Hardwareauslastung und -drosselung über Probleme beim Schreiben von Datenbanken bis hin zu Benutzern mit erheblichen Verlangsamungen und sogar Unterbrechungen während der Kurszeit reichen.

Datenbankdrosselung und Transaktionskonflikte

LearnDash führt einige lange Sätze von SQL-Abfragen aus. Wenn Sie beispielsweise eine große Anzahl von Benutzern haben, sagen wir 20.000, ruft LearnDash alle ab, auch wenn Sie nur ein Profil zum Bearbeiten auswählen möchten.

Auch hier helfen einfache Server-Clustering-Lösungen wenig. Fast jede Aktion, die in LearnDash ausgeführt wird, aktualisiert die Datenbank. Wenn der Server-Cluster, der Ihre LearnDash-E-Learning-Site bedient, stark ausgelastet ist, schreiben die Cluster-Serverknoten ständig in die Datenbank. Dies kann zu Transaktionskonflikten führen.

In Situationen mit hohem Datenverkehr können diese häufig zu Datenbanktabellensperren oder einer vollständigen Datenbanksperre führen, wodurch der Schreibzugriff für alle verweigert wird. Das ist natürlich katastrophal.

Spitzen-CPU-Auslastung

WordPress LearnDash ist von Natur aus eine dynamische Anwendung, die nicht gut mit Caching-Strategien zusammenarbeitet. Dies ist nicht die Schuld von LearnDash, wie wir eingangs gesagt haben, aber es bedeutet, dass Sie seine Leistung nicht einfach beschleunigen können, indem Sie nur HTTP-Antworten zwischenspeichern.

Dies liegt daran, dass es eingeloggte Benutzer gibt, die sich mitten in Multiple-Choice-Tests befinden, mit Timern und Inhalten, die speziell für sie gerendert werden müssen, und es gibt einfach nur sehr wenig, das zwischengespeichert werden kann.

Wenn also fast alle Inhalte nicht zwischengespeichert sind, bedeutet dies, dass jeder LearnDash-Benutzer, der einen Test durchführt, mindestens 1 Backend-PHP-Prozess erzeugt. Stellen Sie sich vor, was passiert, wenn sich 50 Benutzer fast gleichzeitig anmelden!

Damit ein Benutzer eine reibungslose LearnDash-Sitzung erleben kann, benötigt er im Allgemeinen dedizierte CPU-Ressourcen. Der CPU-Bedarf ist jedoch nicht konstant, da jeder Benutzer während des Tests einige Leerlaufzeit online verbringen kann. Wenn die Gesamtmenge der Backend-PHP-Prozesse, die darauf warten, bedient zu werden, ein Vielfaches Ihrer gesamten CPU-Pool-Ressourcen ist und Sie nichts drastisch unternehmen, um die Last zu verringern (z. B. einige von ihnen herunterzufahren), wird eine Lawine losgehen und Sie werden den gesamten Server verlieren.

Zusammenfassend lässt sich sagen, dass einfache VPS-Setups und WordPress-Hosting-Pläne, die nicht Enterprise sind, bestenfalls nur ein paar Dutzend angemeldete Benutzer verarbeiten können. In den Fällen, in denen alle Benutzer fast gleichzeitig eine Aktion ausführen, erreichen Sie einen Höhepunkt, und alles schlägt fehl.

Unternehmensarchitektur für WordPress LearnDash

Nachdem wir einige der Leistungsherausforderungen von LearnDash kurz angesprochen und ein etwas beunruhigendes Bild gezeichnet haben, möchten wir Ihnen zeigen, wie wir sie bei Pressidium angehen und warum unsere Unternehmensarchitektur von der LearnDash-Community als eine der besten angesehen wird , wenn nicht die besten Plattformen, auf denen LearnDash ausgeführt werden kann.

Die Wahrheit ist, dass die Mehrheit unserer Konkurrenten großen LMS-Sites einfach entmutigen, da sie die Anforderungen, die sie an ihre Infrastruktur stellen, nicht bewältigen können. Wie wir bereits erwähnt haben, können einfache VPS-Setups oder sogar einfache Clustering-Systeme einfach nicht mit hohem Datenverkehr oder einer großen Anzahl gleichzeitiger Benutzer umgehen. Aus diesem Grund empfehlen oder empfehlen wir in diesen Fällen die Verwendung in unseren Standardplänen nicht. Die einzige Ausnahme ist die Entwicklung oder sehr kleine Setups.

Wir empfehlen Pressidium Enterprise im Allgemeinen als die beste Option für große Produktionsstandorte, auf denen LearnDash ausgeführt wird. Wir verwalten und betreiben erfolgreich Enterprise LearnDash - Installationen mit Tausenden von gleichzeitigen Benutzern .

Um das Problem der Datenbankdrosselung zu lösen, haben wir bestimmte Datenbankoptimierungstechniken entwickelt, die LearnDash beschleunigen und gleichzeitig die Hochverfügbarkeit aufrechterhalten (LearnDash ist leider von Natur aus nicht mit Hochverfügbarkeitsdatenbanken mit mehreren Mastern kompatibel). Wir nennen sie liebevoll „unsere geheime Sauce“, da diese Techniken hochgradig individuell und genau auf unsere einzigartige Unternehmensarchitektur zugeschnitten sind.

Beachten Sie jedoch, dass diese Anpassungen nur auf Enterprise-Pläne angewendet werden können, da sie Ihnen einen dedizierten Enterprise-Server-Cluster zur Verfügung stellen. Sie können auch auf andere LMS-Plugins angewendet werden, falls Sie LearnDash nicht in Ihrem Klassenzimmer verwenden.

Unsere Lösung für das Spitzen-CPU-Problem ist dagegen viel einfacher: Fügen Sie mehr reine CPU-Pferdestärken hinzu. Aus diesem Grund haben wir keine Allzweck-Cloud-Computing-Anbieter wie Google Cloud oder AWS eingesetzt, sondern unsere Plattform von Grund auf selbst aufgebaut. Das Ergebnis sind Kosteneinsparungen, die unseren Kunden deutlich mehr Ressourcen zu ähnlichen oder sogar niedrigeren Preisen wie unsere Wettbewerber bieten:

2N+1 Hochverfügbarkeitskonfiguration in einem dedizierten Servercluster mit 5 Knoten mit Lastausgleich und höheren Isolations- und Redundanzfaktoren. Diese ermöglichen es Ihrer WordPress LearnDash -Site, während Verkehrsspitzen und Slashdot-Effekten automatisch zu skalieren und hochverfügbar und fehlertolerant zu sein.

Wir sind stolz auf die LearnDash-Leistungsfähigkeit unserer Plattform, da sie den Stress der LearnDash-Site-Besitzer, die sich mitten in einer Sitzung mit technischen Problemen befassen müssen, vollständig lindert. Aber wir sind noch stolzer, weil unsere Unternehmensarchitektur die Lernträume und -bedürfnisse von LearnDash-Benutzern aus der ganzen Welt unterstützt.

Treten Sie Pressidium bei und verwandeln Sie Ihre LearnDash-Site in ein leistungsstarkes E-Learning-Center. Teilen Sie Ihre LearnDash-Herausforderungen mit unseren Ingenieuren und fordern Sie ein Unternehmensangebot an, indem Sie auf die Schaltfläche unten klicken!