Ich vermute, dass die Gesamtzeit, die Blizzard (ich schätze, dass es ein Dienstagmorgen ist, an dem Sie Ihre Frage stellen) für die Wartung des gesamten Clusters gilt. Nicht jeder Server benötigt so viel Zeit, um Arbeiten auszuführen.
Es könnte zwar möglich sein, einzelne Server schneller wieder hochzufahren, dies würde jedoch Schreie der Bevorzugung von Spielern verbieten, deren Bereiche früher in den Zeitplan fielen. Als solche halten sie alles nieder, bis die ganze Arbeit erledigt ist; Mit Hunderten von Realms, an denen gearbeitet werden muss, erledigen sie wahrscheinlich einen Großteil der Arbeit parallel, serialisieren jedoch immer noch eine letzte Überprüfung, bevor sie die Dinge wieder online stellen. Wenn Sie ein Hardware-Upgrade durchführen, wird dieses wahrscheinlich in so vielen Rechenzentren wie möglich serialisiert.
In Bezug auf die Gründe für die Durchführung der Wartung kann es sich zum Teil nur um einen Neustart der Leistung handeln. Es wäre zwar großartig, wenn solche Neustarts nicht erforderlich wären, aber die Kosten dafür im Vergleich zu den Auswirkungen, die sich daraus ergeben, können hier die Entscheidung treffen.
Wenn Sie sich ansehen, warum sie die Prozesse nicht in Clustern zusammenfassen und fortlaufende Wartungen durchführen können, deuten die wenig bekannten Kenntnisse der WoW-Infrastruktur darauf hin, dass für jeden Bereich mehrere Computer Dienste bereitstellen (einer für die Welt, einer für Instanzen und Schlachtzüge, einer für Schlachtfelder) , usw.) Sie verwenden keine vom Status gemeinsam genutzte Aktiv-Aktiv-Prozesskonfiguration. Es gibt keine Weitergabe des Live-Status, nur persistenter Daten über eine Datenbank.
Letztendlich stellen die Mechanismen der Bereitstellung eines statusbehafteten Onlinedienstes für eine so große Abonnentenbasis einige der Best Practices in Frage, die wir möglicherweise vertreten, wenn es um eine Website oder einen anderen herkömmlichen internetbasierten Dienst geht.
Bei einigen der kürzlichen längeren Ausfallzeiten in EvE Online ging es darum, neue Hardware wie ein schnelleres SAN zu installieren. Während ein Großteil der Daten technisch verschoben werden kann, indem eine neue Dateigruppe auf dem neuen Laufwerk erstellt und dann die Hauptdateigruppe geleert wird, hätte dies aufgrund konstanter E / A-Vorgänge zu einem längeren Zeitraum mit verringerter Leistung geführt. Deshalb haben sie sich dafür entschieden , die 1,1-TB-Datenbank zu trennen und sie auf einmal zu verschieben.
Die Antwort auf diese Frage hängt auch von der spezifischen Anwendung ab. Beispielsweise kann ein Server, der ein bestimmtes Sternensystem verwaltet, nicht im laufenden Betrieb ausgetauscht werden, ohne dass das Spiel unterbrochen wird. Daher wird die Ausfallzeit verwendet, um leistungsstärkere Server potenziellen Hotspots zuzuweisen. Zusätzlich werden die Eigentumsberechnungen (Souveränität) von Sternensystemen berechnet. Dies hängt von den zehn verschiedenen Variablen ab, die sich alle in Abhängigkeit von den Aktionen des Spielers ändern können. Es ist unnötig zu erwähnen, dass dies zu übermäßigem Sperren und / oder anderen Problemen im Zusammenhang mit der Parallelität führen kann. Um diese Probleme zu lösen, ist es am besten, den Stack-Overflow zu überlassen .
quelle
Vermutlich etwas, mit dem Sie über Clustering / Load-Balancing nicht fertig werden konnten, z. B. wesentliche Änderungen des DB-Schemas.
quelle
In einem aktuellen Thema Wie oft sollte ich Linux-Server neu starten ? Ein weiterer wichtiger Punkt wurde angesprochen, um sicherzustellen, dass beim Neustart oder nach einer (größeren) Konfigurationsänderung alles ordnungsgemäß startet.
quelle
Ein einfaches Upgrade von Hardware (oder Hardware-Ersatz) wird von MMORPG-Spielen auch als "Serverwartung" bezeichnet. So trivial, dass wir es oft vergessen.
quelle
Ich habe eine MMO-Architektur in Erlang implementiert, die Hot-Code-Upgrades und -Verteilung unterstützt. Beispielsweise kann ein "GamePlay Server" auf einer beliebigen Anzahl von Computern ausgeführt werden. Wenn ein Hardware-Upgrade erforderlich ist, können seine Objekte (in Echtzeit) auf die anderen Computer übertragen werden. Dies ermöglicht Upgrades der Software-Hardware ohne Ausfallzeiten.
Sie können meine Website unter http://www.next-gen.cc überprüfen .
quelle
Ich bin der Überzeugung, dass das Wartungsfenster auch den routinemäßigen Austausch von Hardware ermöglicht, um sicherzustellen, dass Komponenten nicht ausfallen.
quelle