- Für PC
- Für MAC
- Für Linux
- Betriebssystem: Windows 7 SP1/8/10 (64bit)
- Prozessor: Dual-Core 2.2 GHz
- Arbeitsspeicher: 4GB
- DirectX 10.1 fähige Grafikkarte: AMD Radeon 77XX / NVIDIA GeForce GTX 660; die geringste Auflösung für das Spiel beträgt 720p
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 17 GB
- Betriebssystem: Windows 10/11 (64bit)
- Prozessor: Intel Core i5 / Ryzen 5 3600 oder besser
- Arbeitsspeicher: 16 GB und mehr
- DirectX 11 fähige Grafikkarte oder höher mit den neuesten Treibern: NVIDIA GeForce GTX 1060 oder höher / AMD Radeon RX 570 oder höher
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 95 GB
- Betriebssystem: Mac OS Big Sur 11.0 oder neuer
- Prozessor: Intel Core i5, 2.2 GHz (Intel Xeon Prozessoren werden nicht unterstützt)
- Arbeitsspeicher: 6 GB
- Grafikkarte: Intel Iris Pro 5200 oder analoge AMD / Nvidia mit Support für Metal; die geringste Auflösung für das Spiel beträgt 720p
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 17 GB
- Betriebssystem: Mac OS Big Sur 11.0 oder neuer
- Prozessor: Intel Core i7 (Intel Xeon Prozessoren werden nicht unterstützt)
- Arbeitsspeicher: 8 GB
- Grafikkarte: Radeon Vega II oder höher mit Support für Metal
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 95 GB
- Betriebssystem: neueste 64bit Linux Systeme
- Prozessor: Dual-Core 2.4 GHz
- Arbeitsspeicher: 4 GB
- Grafikkarte: NVIDIA 660 mit den neuesten Treibern (nicht älter als 6 Monate) / vergleichbare AMD mit den neuesten Treibern (nicht älter als 6 Monate); die geringste Auflösung für das Spiel beträgt 720p; mit Support für Vulkan
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 17 GB
- Betriebssystem: Ubuntu 20.04 64bit
- Prozessor: Intel Core i7
- Arbeitsspeicher: 16 GB
- Grafikkarte: NVIDIA 1060 mit den neuesten Treibern (nicht älter als 6 Monate) / vergleichbare AMD mit den neuesten Treibern (nicht älter als 6 Monate); mit Support für Vulkan
- Netzwerk: Breitband-Internetverbindung
- Festplatte: 95 GB
Wie andere Client/Server-Produkte hat unser Spiel eine sehr komplexe und verteilte Infrastruktur, die aus einer Vielzahl verschiedener Server besteht. Dazu gehören Autorisierungsserver, Server zum Speichern von Benutzerprofilen, Schlacht-Server, ein Staffel-Server und ein Sprachkommunikations-Server. Alle diese Server befinden sich nicht auf einem einzigen Gerät, sondern auf Dutzenden! Hinzu kommt ein Matching-Server, der aus vielen physischen Geräten von Eingangs-Gateways besteht, die Proxys sind, um Fehlerquellen auszuschalten, und ein Server, der tatsächlich die Schlachten aus Spielern in der Warteschlange erstellt.
Nun ein paar Details zu dem, was am vergangenen Wochenende passiert ist. Einer der Gateway-Dienste war 375 Tage lang in Betrieb, und während eines geplanten Neustarts wurde eine falsch Konfigurationsversion geladen, die nur einen einzigen Kern verwendete (wir haben dies erst am Sonntag festgestellt) und IP-Adressen falsch vermittelte. Zunächst hatten wir den Eindruck, dass der Server durch die neu eingeführten Fahrzeuge und eine Spielernation sowie durch die Aufmerksamkeit der Community für das neue Update überlastet war. Wir haben beschlossen, die Kapazität so schnell wie möglich zu erhöhen, indem wir auf die leistungsstärksten und teuersten Geräte von Amazon umsteigen. Dies kann jedoch nicht spontan geschehen, und der Umzug selbst nahm Zeit in Anspruch. Aber selbst als der Umzug abgeschlossen war, blieb das Problem mit der falschen Konfiguration und dem Single-Threading bestehen. Der Server verstand, dass alle Spieler, die sich über diesen Dienst anmeldeten, dieselbe IP hatten, konnte sie nicht schnell finden und begann zu laggen. Nach etwa 22:00 Uhr MEZ wurde das Problem der falschen Proxys lokalisiert und bald darauf behoben, und die Schlachten begannen wieder zu passen. Im Laufe der Nacht verringerte sich jedoch die Zahl der Nutzer, und auch die Tatsache, dass die Proxys mit einem einzigen Kern arbeiteten, beeinträchtigte den Betrieb nicht.
Am Sonntag stieg die Last mit der Zunahme der Nutzer und der Schlachten wieder an, und wir fanden schließlich einen zweiten Konfigurationsfehler, und im Laufe des Nachmittags behoben wir den Single-Thread-Proxy, indem wir die falsch konfigurierten Maschinen nach und nach entfernten und die neuen einführten, um zu vermeiden, dass die bereits spielenden Nutzer von den Diensten nicht beeinträchtigt wurden. Auch dieser Vorgang nahm einige Zeit in Anspruch. Es ist anzumerken, dass auch vor der Einführung der leistungsstärkeren Server genügend Kapazität zur Verfügung stand - die Leistung eines einzelnen Kerns reichte nicht aus, aber es gab viele davon. Nach dem Upgrade nutzten wir nur etwa 6 % der Gesamtkapazität (d. h. eine 20-fache Leistungsreserve gegenüber dem Maximalwert).
Schlussfolgerungen
Auf der Grundlage der Ergebnisse zogen wir Schlussfolgerungen und planten Verbesserungen sowohl des Betriebs- als auch des Matching-Codes. Erstens planen wir, die Fehlertoleranz des Dienstes zu überprüfen, indem wir alle Server mit zu langer Betriebszeit neu starten, wobei wir die Erfahrung großer Streaming-Dienste wie Netflix nutzen, die spezielle Bots zur Überprüfung der Betriebszeit einsetzen.
Außerdem haben wir bereits Verbesserungen am Matching-Code vorgenommen, die es uns ermöglichen werden, auch bei starker Belastung ein akzeptables Niveau des Spielbetriebs aufrechtzuerhalten - die Warteschlangenbildung kann länger dauern, aber der Dienst wird nicht aufhören, auf die Spieler zu reagieren - er bleibt betriebsbereit.
Darüber hinaus hat die Anzahl der Spielnationen und der möglichen Spielkonfigurationen in den Schlachten sehr große Werte erreicht, so dass algorithmische Optimierungen erforderlich sind. Die Ermittlung aller möglichen Kombinationen aller Spieler und aller Spielnationen ist die quadratische Komplexität des Algorithmus, so dass es notwendig ist, Optimierungen vorzunehmen, um vielleicht nicht eine absolut perfekte mögliche Übereinstimmung zu finden, aber zumindest gut genug.
Weitere gute Nachrichten. Meldet euch vom 4. November (12:00 MEZ) bis zum 8. November (12:00 MEZ) im Spiel an, um einen Premium-Booster zu erhalten, +30% RP für 5 Schlachten!
Kommentare (13)
Vielen Dank für diesen ausführlichen Bericht!! Dieser sollte gerade denen Leuten zeigen, daß das Betreiben von Spieleservern sehr komplex sein kann, und daher die Fehlersuche nicht mal so fix geht. Macht weiter so!!! Good Job.
Danke für die ausführlichen Erklärungen. Schade nur um das verkorkste Helloween-Wochende. Der Ausgleich dafür in Form eines Boosters ist aber nett.
Respect that you guys took the time to explain what happend!
Thanks for explaining! :)
thanks
Besten Dank das ihr euch die Zeit genommen habt uns das so perfekt darzustellen. Somit wird der Frust direkt mit Mitleid für die IT-Kollegen ausgetauscht, die über das Wochenende eine komplexe Fehlersuche auf verschiedensten Plattformen durchführen mussten. Die Meldungen das man bereits auf einem anderen Gerät angemeldet sei hatte sich nach gehacktem Account angehört. Auch ein Bug in dem doch sehr großen Update wurde mit diesem Report widerlegt. Also: „Alles richtig gemacht“ weiter so.
Das konnte ich jetzt auch gut nachvollziehen. :) Ich war auch erst geschockt, als ich nach dem fehlgeschlagenen Anmeldeversuch die Meldung erschien, dass ich mit dem Konto schon auf einem anderen Gerät angemeldet sei. Dabei lag das daran, dass der Server, die auf den Gateway-Dienst zugreifenden Spielern, die gleiche IP-Adresse zuwies. Natürlich denkt der Server dann: „Hey 192.xxx.xx.x! Du bist doch schon auf Gerät ‚IPv4 = x‘ angemeldet!“
Ich finde es prima, daß ihr euch entschlossen habt mal zu erklären, was denn genau abgelaufen ist. Die Kommunikation mit der Spielerbasis ist ein sehr wichtiger Aspekt bei einem F2P Game. Denn ohne Kommunikation steigt bei solchen Ausfällen der Frust und die Spieler bleiben weg.
Dieser Entschuldigungsbooster ist gar nicht nötig. Mir reicht, dass hier auf Ehrlichkeit gesetzt wird und sogar das Problem grob umschrieben wurde. Das und die wöchentlichen Update News gehören zu den positivsten Sachen, die ihr in in diesem Jahr gemacht habt. Weiter so. :)
Danke für die ausführliche Erklärung
Ihr habt die besten Server, die Probleme reißen nicht ab. Für den ärger wird man mit einen 30% Booster abgespeist.