[Wargaming] Wargaming redet über Server
Ein weiterer interessanter Artikel, der nicht auf den EU-Servern veröffentlicht wurde, sondern nur auf dem RU-Server. In diesem erklärt WG, wie Server funktionieren.
Wie es anfing
Seit Anfang des Spiels wurde, alles was das Spiel betrifft (das Spiel selbst, das Forum, die Spielerprofile etc.) von einem großen Server Cluster verarbeitet. Der allererste Server stand in München und wurde 2011 nach Russland ausgelagert. Dies hat den Ping für RU-Spieler deutlich verringert. Aber dies hatte eine großen Nachteil, weil es eben nur ein Server Cluster gab, musste dieser mehrmals die Woche neugestartet werden und während die Server offline waren konnte keiner das Spiel spielen.
Um dies zu vermeiden, wurde mit 0.7.0 die Multi Server Cluster Technologie eingeführt. Die Struktur veränderte sich und der Cluster wurden aufgeteilt in Hauptserver und Peripheriegeräte. Auf dem Hauptserver ist die Datenbank, in der alle Spieler Daten abgelegt sind. Auf den Peripheriegeräten ist der Rest, eigentliche alle Server auf denen gespielt wird. Zu diesem Zeitpunkt laufen alle Spiele auf 9 Peripherie Servern. Alle Spieler spielen auf den Peripherie Servern und keiner auf dem Hauptserver. Wenn der Hauptserver nicht läuft können die Spieler dem Spiel nicht beitreten, allerdings ist es möglich weiter zu spielen, wenn man vor dem Absturz des Hauptservers auf einem Peripherie Server eingeloggt war.
Wo sind die Sever?
Die Server sind in sogennanten Rechenzentren untergebracht. Je näher ein Rechenzentrum am Spieler ist, desto besser ist es. Dies ist auch der Grund, warum die WG-Server über alle Spieleregionen verteilt sind.
- 3 Rechenzentren sind in Moskau (auf einem läuft gleichzeitig WoT, WoWs und WoWp)
- die 2 anderen in Moskau steuern die 4 Peripheriegeräte
- RU4 und RU8 sind in Novosibirsk und Krasnoyarsk
- in Europa gibt es 3 Rechenzentren (Amsterdam, Frankfurt and Luxemburg)
- US Server sind auf der Westküste und der Ostküste
- in Asien gibt es einen Server Cluster in Korea und einen in Malaysia
- der chinesische Server Cluster wird nicht durch WG betrieben, dies machen Partner.
Die Serverstruktur ist sehr flexible und einfach austauschbar. Aus der Sicht eines Administrators macht es keinen Unterschied was auf dem Server läuft (WoT, WoWs and WoWp).
Wieviele Computer braucht man damit alle spielen können?
Als WoT anfing mit nur einem Server Cluster, konnten maximal 250.00-270.000 Personen online sein. Ein Server Cluster besteht aus etwa 100 Computern, die als eine Einheit arbeiten. Dies belastet nicht nur die Server, sondern auch die Betreiber des Netzwerkes. Mit 250.000 Spielern liegt der Datenverkehr bei etwa 6-7 Gb/s.
Auf dem jetzigen Pheriperiesystemen gibt keine solchen Grenzen und die Serverprobleme werden auf einer individuellen Basis gehandhabt. Ein einzelner Server kann von etwa 2500-3000 Spielern genutzt werden und hat eine Datenverkehrsspitze von 60-70 MBit/s. Ein normales Cluster hat etwa 50-80 Server und manche Periferien erlauben es dem Betreiber mehr Server hinzuzufügen, wenn dies benötigt wird, aber normalerweise werden die Server Racks bis auf das Maximum ihrer Kapazität genutzt.
Wie bekommen Nutzer ihre Updates?
Patches werden durch speziell ausgebildete Personen zusammengestellt, diese werden “Build Engineer” genannt, für jedes Spielupdate. Eine Patch ist eine Datei, die egal welchen Teil der Software auf der Nutzerseite verändert und aktualisiert. Damit der Nutzer die Patch herunterladen kann, wird diese auf einen Platz verschoben der CDN (Content Delivery Network) heisst und von dort auf den Firmen Server verteilt. Falls die Patch größer als 30MB sein sollte, wird eine Torrentdatei erstellt um die Effizienz der Verteilung zu steigern – diese Torrentdatei wartet auch im CDN auf einen Abruf des Nutzers. Jedesmal wenn das Spiel startet wird der Update Server abgefragt und falls eine Patch verfügbar ist wird die Torrentdatei empfangen oder ein Link zu der Patch (in dem Fall, wenn Torrent ausgeschaltet wurde).
Wie kommen die Nutzer ins Spiel?
Jeder Nutzer von jeder Region kann jedem Server beitreten. Wenn der Nutzer auf dem RU-Region registriert war, kann er zu jedem Periperhie Server eine Verbindung herstellen. Als Standard ist in den Einstellungen die automatische Auswahl der Peripherie aktiviert und während der Registrierung wird die Anfrage durch einen komplizierten Algorithmus berechnet, dieser berücksichtigt nicht nur die Signallaufzeit (Ping) sondern auch die Auslastung der Server. Wenn Server X in Russland mehr ausgelastet ist als Server Y, wird der Nutzer zu Server Y gesendet. Generell kann man sagen, dass das System kann ihn nach Amsterdam oder auch nach Novosibirsk schicken kann, wobei der Nutzer die Server auch manuell auswählen kann.
Wo ist die Garage, wo ist das Gefecht und was passiert, wenn man den “Gefecht” Knopf drückt?
Es gibt Server auf dem der Spielprozess läuft, der Hangar und der Login. Des Weiteren gibt es Server, die nicht mit dem Nutzer arbeiten, sondern mit der Systeminformationen. Zum Beispiel: Wenn ein Nutzer das Spiel startet, kommt er in den Login Vorgang. Die Registrierung wandert automatisch intern zu der einzige Registrierungszentrale, diese bestätigt Nutzername und Passwort und dass es den Spieler tatsächlich gibt damit er das Spiel betreten kann. Nach der Anmeldung wird der Nutzer in den Hangar transferiert und dessen Daten auf einen anderen Server verschoben. Beispiel: Wenn ein Server sehr belastet wird (mehr als 100.000 Spieler online), kann es passieren, dass ein Cluster abstürzt und in solchen Fällen braucht es einen Neustart. Aber dies passiert nur einem physikalischen Server, der Rest des Clusters wird seine Arbeit normal weiterführen und Dank dessen, kann ein Spieler sein Spiel zu Ende führen.
Das Schlimmste was passieren kann ist, wenn der Server, der die Anmeldung der Spieler bearbeitet, abstürzt. Falls dies passiert, wenn man das Spiel betreten möchte, wird der Spieler eine Nachricht erhalten, dass er zu einer anderen Peripherie transferiert wurde.
Dieses Problem kann nur mit einem Neustart des Servers behoben werden und es gibt eine Noitz in der Datenbank, dass der Spieler auf einer Periperhie feststeckt in diesem oder jenem Spielprozess, welcher auf einem Server läuft, der abgestürzt ist. Bis diese Notiz entfernt wird kann der Spieler sich nirgendwo hin bewegen. Dies wurde zu Gunsten des Nutzers gemacht.
Technisch ist es möglich einen Spieler auf einen anderen Peripherie “lassen”, wenn das Konto feststeckt, aber dies kann auf der “abgestürzten” Peripherie zum Verlust des Fortschrittes der letzten 2 Stunden führen, weil die Kontodaten alle 2 Stunden auf der Datenbank gesichert werden. In einem solchen Fall ist es besser zu warten, als eine seltene Medaille oder Auszeichnung die du bekommst zu verlieren.
Um einen sicheren und stabilen Ablauf der Netzwerkes und der Server zu gewährleisten, wird weitestgehend Datenredundanz und Backups genutzt. Zum Beispiel: Das beide Laufwerke wie eines arbeiten hat einen Vorteil, wenn einer versagt, kann der Server immer noch auf die Daten aufrufen und das Spiel die Arbeit weiterführen. Jeder Server hat 4 Netzwerkkarten, in Paaren aufgeteilt: eine ist für die Verbindung zwischen den Servern innerhalb des Clusters zuständig und eine für die Verbindung zu den Spielern. Neue Rechenzentren haben Server mit redudanter Energieversorgung. Aus der Sicht von Rechenzentren heisst dies, dass der Strom von verschiedenen Anbietern kommt. Die Kanäle der Internetverbindung werden von unabhängigen Anbietern bereitgestellt und sind physisch verbunden mit dem Rechenzentrum durch zugewiesene Kanäle. 2-3 Jahre vorher war es unmöglich nicht die technischen Fehler zu bemerken, aber jetzt kann ein Problem entstehen und behoben werden, ohne das die Spieler die bemerkt.
Quelle: http://ftr.wot-news.com/
“in Europa gibt es 3 Rechenzentren (Amsterdam, Frankfurt and Luxemburg)”
Das verstehe ich nicht..
Ingame gibt es nur 2 Server, von Amsterdam und Frankfurt wusste ich, aber der “dritte” in Luxemburg ist mir neu und auch Ingame nicht sichtbar!
Aber trotzallem ein informativer Artikel. thx
Rechenzentren ist nicht gleich Spielserver, auf welchen du Zugang hast (so weit ich das jetzt verstehe)
also also EU1 und EU2 sind die peripheren Cluster Server, ich vermute, dass Luxemburg der Hauptserver für die Benutzerdaten ist.
Ein Rechenzentrum ist prinzipiell jede Räumlichkeit, in denen die Server (Anzahl kann varrieren) zentral untergebracht sind.
Bitte aufpassen, EU1 und EU2 sind nicht nur 2(!!!) Server, da die Server Cluster als eine Einheit agieren, haben diese auch einen Namen um dies einfacher zu gestalten, aber in Wahrheit sind dies mehrere hundert (!!!) Server, die untereinander vernetzt sind.
Dann lag ich mit meiner primitiven aussage ja richtig 🙂
ja, das ist halt ein sehr komplexes Thema…da muss man sich schon mit befassen, bzw. man muss das Ganze schon anwenden können/umdenken auf die Begebenheiten