War Thunder background
Technické problémy v uplynulém víkendu

Stejně jako jiné produkty typu klient/server má i naše hra velmi složitou a distribuovanou infrastrukturu, která se skládá z různých serverů. Jedná se o autorizační servery, servery pro ukládání uživatelských profilů, bitevní servery, server skupin a server hlasové komunikace. To vše není na jediném zařízení, ale na desítkách! Navíc server skládající hráče do her, který se skládá z mnoha fyzických gatewayí, které slouží jako proxy pro eliminaci bodů selhání, a server, který skutečně vytváří bitvy z hráčů ve frontě.

Nyní trochu podrobněji o tom, co se stalo o uplynulém víkendu. Jedna ze služeb brány byla v provozu 375 dní a během plánovaného restartu byla nahrána chybně nakonfigurovaná verze, která využívala pouze jedno jádro (zjistili jsme to až v neděli) a nesprávně prováděla službu proxy IP adres. Zpočátku se nám zdálo, že je server přetížený kvůli nově implementované bojové technice a hernímu národu a také kvůli pozornosti komunity k velké aktualizaci. Rozhodli jsme se co nejdříve zvýšit kapacitu přechodem na nejvýkonnější a nejdražší zařízení v Amazonu. To však nelze provést okamžitě a samotné stěhování si vyžádalo čas. Ale i po dokončení přesunu zůstal problém s nesprávnou konfigurací a jednovláknovým systémem. Server pracoval s tím, že všichni hráči vstupující přes tuto službu mají stejnou IP adresu, nemohl je rychle najít a začal zaostávat. Přibližně po 21:00 GMT byl problém s nesprávným proxy lokalizován a brzy poté opraven a bitvy se začaly opět skládat. Během noci se však počet uživatelů snížil, a dokonce ani skutečnost, že proxy servery pracovaly s jediným jádrem, nenarušila provoz. 

V neděli se s nárůstem uživatelů a bitev zátěž opět zvýšila a nakonec jsme zjistili druhou chybu v konfiguraci a během odpoledne jsme opravili jednovláknový proxying plynulým odstraněním nesprávně nakonfigurovaných strojů a zavedením nových, aby nedošlo k odepření služeb pro uživatele, kteří již hráli. I tento proces zabral nějaký čas. Nutno podotknout, že i před zavedením výkonnějších serverů bylo k dispozici dostatek kapacitního výkonu - výkon jednoho jádra nestačil, ale bylo jich hodně. Po upgradu jsme využívali jen asi 6 % celkové kapacity (tj. 20násobnou rezervu výkonu oproti špičce).

Závěry

Na základě výsledků jsme vyvodili závěry a naplánovali zlepšení provozu i párovacího kódu. Nejprve plánujeme ověřit odolnost služby vůči poruchám restartováním všech serverů s delší dobou provozu, přičemž využijeme zkušeností velkých streamovacích služeb, jako je Netflix, který používá speciální roboty, kteří kontrolují provozní dobu 

Také jsme již zavedli vylepšení v párovacím kódu, která nám umožní udržet přijatelnou úroveň provozu hry i při velkém zatížení - čekání ve frontě může trvat déle, ale služba nepřestane hráčům odpovídat - zůstane funkční. 

Kromě toho nárůst počtu herních národů a možných herních konfigurací v bitvách dosáhl velkých hodnot a je zapotřebí optimalizace algoritmů. Objevení všech možných kombinací všech hráčů a všech herních národů představuje kvadratickou složitost algoritmu, takže je nutné vytvořit optimalizace, aby se našla možná ne úplně dokonalá možná shoda, ale alespoň dostatečně dobrá.

Další dobré zprávy. Přihlaste se do hry od 4. listopadu (12:00 SEČ) do 8. listopadu (12:00 SEČ) a získejte prémiový booster v hodnotě +30% RP na 5 bitev!

Přečtěte si více:
Bedna s nářadím!
Mad Thunder: Běs a kořist!
Bojová technika Bitevního pasu: Kungstiger
Bojová technika Bitevního pasu: P-51C-11-NT Mustang (Čína)

Komentáře (18)

Commenting is no longer available for this news