Gry w chmurze

Rasowi gracze dobrze wiedzą, że nie ma grania w sieci bez dobrego zaplecza obliczeniowego. Gry akcji, strzelanki, a przede wszystkim gry typu massive multiplayer online RPG wymagają centralnego serwera, który odbiera od wszystkich graczy informacje o postępach gry, synchronizuje stan świata i rozsyła go do każdego z osobna.

Wiele gier zawiera wbudowane oprogramowanie serwerowe – uruchamiasz taką aplikację na swoim komputerze i dajesz innym graczom możliwość łączenia się przez Internet. To wystarczy, gdy gra kilka osób, w mniej wymagające tytuły, najlepiej w sieci LAN, ale gdy graczy pojawia się więcej, zaczynają się problemy. Typowe domowe łącza internetowe „nie wyrabiają”, pasmo transferu w górę jest zwykle ich wąskim gardłem. Opóźnienia sprawiają, że gracz korzystający z hosta ma nieuczciwą przewagę, a gdy mu się to wypomni, to może się obrazić i odejść, a wówczas z grania nici dla wszystkich.

Dlatego poważni gracze wybierają serwery autonomiczne – specjalne oprogramowanie uruchamiane w centrach danych, działające bez względu na to, kto akurat do nich się podłączył, zapewniające niskie opóźnienia i wysoką wydajność przetwarzania świata gry. Ich wada to oczywiście koszty. Hosting takiego oprogramowania nie jest za darmo, co więcej, zwykle serwer gry ma znacznie wyższe wymagania, niż prosta strona WWW na WordPressie, często dostępny jest też tylko w wersji na Windows.

Co więc robić? Najczęściej grupa znajomych, która chce pograć w swoim gronie online, robi zrzutkę na serwer i kupuje VPS-a o wyśrubowanych parametrach. Administrator instaluje serwer, rozsyła w grupie dane do logowania, a potem – potem wszyscy są niezadowoleni, bo ich kosztujący setki złotych miesięcznie VPS działa niestabilnie, dla niektórych graczy w niespodziewanych momentach pojawiają się opóźnienia. I mimo że hoster zapewnia o najwyższych parametrach swojej usługi, a administrator eksperymentuje z dostrajaniem konfiguracji, to nic nie pomaga. Problem tkwi bowiem na poziomie infrastruktury. Typowemu hostingowi VPS-ów, korzystającemu z kontenerów OpenVZ czy Virtuozzo, doskwierają opóźnienia na poziomie jądra systemu, nie mówiąc już o problemach z elastycznym skalowaniem zużycia zasobów, czy niską wydajnością pamięci masowej. W tej sytuacji zamożniejsi gracze zaciskają zęby i wykupują dedykowany serwer, który rozwiązuje ich kłopoty, a mniej zamożni męczą się z VPS-ami.

Z naszych doświadczeń wynika jednak, że serwery uruchamiane w wydajnej chmurze obliczeniowej są znacznie lepszym rozwiązaniem, niż VPS-y i znacznie tańszym, niż serwery dedykowane. Pełna wirtualizacja, zapewniana przez hiperwizory takie jak Xen czy ESXi, pozwala na znacznie lepszą izolację zasobów, niż techniki konteneryzacji w stylu OpenVZ, dzięki czemu serwer gry pracuje stabilnie nawet przy bardzo wysokich obciążeniach.