Как експертният ни екип помогна на проекта „Awakening of Heroes“ да постигне желаното ниво на скалиране и сигурност, като избра инфраструктурата Google Cloud.
Цели
Постигане на бързо и надеждно скалиране на ресурсите
Постигане на стабилност на сървърите и сигурност на данните
Високо ниво на покритие в рамките на целевите региони, за да може закъсненията при трансфера на данни да се сведат до минимум
Защита на играта от DDoS атаки
Автоматизирано пускане на новите версии на приложението и стартиране на играта на по-новите версии на приложението
Постоянно подобряване на инфраструктурата и поддръжка
Нашият подход
Установяване на комуникация с екипа AoH, анализ и определяне на потребностите
Предлагане на план за действие според нуждите на проекта
Мониторинг на сървърите и анализ на потенциалните проблеми на сигурността
Създаване на стабилно решение в платформата Google Cloud, което да позволява скалиране
Определяне на подходите за актуализиране на новите версии на гейминг приложението
Резултати
Установихме сигурна и надеждна облачна инфраструктура в Google Cloud
Функционално решение, което подлежи на скалиране в двете посоки, независимо от натоварването и региона (географското местоположение)
Избягване на предварителни по-значителни капиталови инвестиции
Финансова икономия и увеличаване на крайния приход от проекта Awakening of Heroes
Установени дългосрочни партньорски взаимоотношения между двете компании
Студио COFA Games и видеоиграта Awakening of Heroes
Awakening of Heroes е безплатна 5v5 MOBA (Multiplayer Online Battle Arena) игра, разработвана от белградското студио COFA Games. AoH съдържа елементи на role-playing и battle royale и е създадена за мобилни устройства (Android и iOS). Тъй като това е игра, в която влизат много играчи едновременно, и то от всички части на света, беше важно да има надеждно и сигурно решение за гейм хостинг с ниска латентност и високи нива на скалиране и сигурност. Анализът на нуждите на COFA Games отличи платформата Google Cloud като оптимално решение за проекта.
Как екипът на Mainstream подходи към проекта и се справи с предизвикателствата на AoH
Awakening of Heroes е комплексен проект, който включва многобройни компоненти и изисква обемна алокация на ресурсите. За да може играта да поддържа хиляди потребители във всеки един момент и от всяка точка на света, беше нужна динамично скалируема инфраструктура, а целият проект изискваше систематичен подход с фокус върху детайлите. Първата ни задача беше да установим комуникация с екипа, разработващ играта, и изцяло да проучим следните въпроси:
Кои са компонентите на проекта и как функционират в цялост?
Върху кои компоненти трябва да се обърне най-много внимание?
Коя е крайната цел на клиента?
След като получи необходимата информация, екипът ни вече можеше да проектира и осъществи нужните процеси, да организира работата и предложи конкретен план за действие, въз основа на който да се изпълнят целите и задачите и да се разработят по-конкретни решения с възможност за усъвършенстване на целия проект и прехвърлянето му в облак.
Цел № 1 – Разработване на Game Room
В този контекст Game Room е компонент, който виртуално събира група играчи на AoH, участващи в една партия на играта. За изграждането на този компонент клиентът ни избра платформата Google Cloud, а нашата задача беше да изградим сървъри на 3 различни локации на глобално ниво:
Азия
САЩ
Европа
Задачата ни беше да изградим динамична сървърна инфраструктура с възможност за скалиране, позволяваща присъединяване на нови играчи във всеки един момент.
Цел № 2: Стабилност на сървърите и сигурност на данните
Стабилност на сървърите
Правилно извършеният мониторинг на сървърите беше ключов за двете позиции – стабилността на сървърите и сигурността на данните, но също така е и тясно свързан с възможността за скалиране на сървърите. За разлика от уеб хостинг средата, в която мониторингът на сървърите е доста лесна задача, средата на мултиплейър играта прави целия процес по-комплексен и изисква вътрешен мониторинг – в рамките на самата игра.
За да се постигне стабилност на сървърите, екипите на AoH и Mainstream трябваше заедно да работят върху следното:
Екипът на AoH осигури достъп до релевантните данни
Нашият екип събира данните и извършва мониторинг
Сигурност и стабилността на данните
Тъй като отделни играчи са много мотивирани да хакнат играта и преодолеят мерките за сигурност, за да спечелят виртуални пари или да отбележат напредък в играта чрез измама, беше жизненоважно да елиминираме тези сценарии.
Цел № 3: Регионално покритие и намаляване на латенцията
Тъй като мултиплейър видеоигрите се играят от хора от цял свят, играчите трябва да се групират по местоположение, за да се избегне появата на латенция или т.нар. „лагване“. Затова всеки регион трябва да има целеви сървър, който ще се използва изключително за местните играчи, а това е и причината повечето такива игри да изискват от играчите информация за местоположението. За разлика от десктоп видеоигрите, мобилните мултиплейър игри са по-чувствителни на латенция, тъй като в играта се влиза чрез WiFi, 3G или 4G интернет връзка.
Задачата ни беше да намерим подходяща услуга в рамките на Google Cloud, за да постигнем оптимално ниво на скалиране.
Цел № 4: Защита от DDoS атаки
Load balancer също така представлява и защитна бариера срещу DDoS атаки (distributed denial-of-service). Тъй като load balancer се определя като една от услугите на облачния провайдър, той автоматично е защитен от определено количество DDoS атаки и употребата му пряко влияе върху стабилността и сигурността на сървърите.
Цел № 5: Надеждно и автоматизирано стартиране на играта на по-новите версии на приложението
Наличието на много региони, в които трябва да се пусне новата версия на приложението, е предизвикателство, тясно свързано с версията на приложението, което потребителите имат на своите устройства.
Трябва да се вземат предвид много компоненти, а процесът на пускане на нова версия включва няколко фази, които не винаги протичат в един и същ ред.
Най-добрата практика и тази, която избрахме, беше новата версия първо да се пусне в региона с най-малък брой играчи и да се направи Git push на главния клон, за да може CI/CD pipeline да отчете новата версия и пускането ѝ в автоскалиращите групи да може да се прави автоматично.
Този процес най-често се извършва чрез стратегията „blue green deployment“, при която една сървърна група се премахва от автоскалиращата група и се добавят нови сървъри с актуализираната версия на приложението.
Цел № 6: Фаза на поддръжка
Процесът на работа в тази фаза наподобява този, който се използва при пускането на новата версия на приложението. Главната цел е да се постигне възможно най-високото ниво на достъп за всяко приложение, което се постига с използване на повече сървъри, поставени след load balancer.
Краен резултат
Най-осезаемият резултат от работата е финансовата икономия и увеличението на крайния приход от проекта. Това се постигна чрез установяване на инфраструктурата, която е в състояние да поддържа начален брой играчи, но може и да се разширява при увеличение на броя на играчите и нарастване на популярността на играта, с което се елиминира нуждата от предварителни по-значителни капиталови инвестиции.
Открийте как Mainstream може да подобри вашия бизнес.
Свържете се с нас на business.bg@mainstream.bg или попълнете нашата контактна форма.
Шпорт Любляна успешно прехвърли приложенията Office, ERP и DMS софтуера в Managed Environment на компанията Mainstream, като придоби стабилност на инфраструктурата, сигурност, разширяемост и професионална поддръжка.
Разчитайки на основна поддръжка, Fitpass успешно трансформира своята ИТ инфраструктура със стратегическото приложение на Kubernetes и CI/CD технологията.