Начало | Успешни истории на клиенти | Внедряване на React frontend за стартъп за сериозни игри
Клиентът беше малък европейски стартъп за сериозни игри в областта на киберсигурността, който вече работеше с компании в региона, но се нуждаеше от помощ за ускоряване на развитието на игровизацията си.
Нашият партньор искаше да подобри производителността на игрите си и да оптимизира съществуващия си технологичен стек с цел по-бързото разработване на допълнителни игри.
Клиентът имаше потенциал да разшири дейността и продукцията си чрез ускоряване и мащабиране на разработката си на игри, но се сблъскваше с трудности, произтичащи от използването на остарели технологии.
Бекендът беше изграден на базата на PHP и MySQL, което възпрепятства способността им да надграждат и оптимизират услугите си.
Frontend-ът им беше изграден на базата на jQuery и HTML, което на свой ред забавяше разработката и ограничаваше способността им да работят по няколко проекта едновременно.
Създаване на една нова игра на месец – значително по-бавен темп в сравнение с потенциалните възможности, което допълнително ограничава мащабируемостта в дългосрочен план.
Използване на Jenkins, което ограничаваше техните CI/CD процеси. Преминаването към нови технологии изискваше и наемането или обучението на нов персонал.
Преминаване от монолитна към по-гъвкава и независима архитектура, базирана на frontend, при която игрите работеха като самостоятелни приложения с минимална backend зависимост.
PHP приложенията им бяха ограничени само до влизане в игри, запазване на игри и статистики, така че техният API също се нуждаеше от оптимизация. Поправяйки това, успяхме да ограничим backend заявките до максимум четири на игра, което значително подобри производителността.
Изграждането на мини "engine" за игри, който позволи бързото създаване на нови игри с минимални бекенд зависимости. Игрите бяха прехвърлени към новия мини двигател, базиран на React, като backend-ът беше запазен само за основните API заявки.
Използвахме практики за автоматизирано тестване на React компонентите, а QA екипът ни проведе ръчно тестване, използвайки сценарии за игри от истинския свят.
Бяха проведени и A/B тестове между старата и новата система, за да се измерят подобренията в производителността.
Разделихме процеса на четири отделни фази, всяка от които надграждаше предишната. През цялото време използвахме Agile методология с двуседмични спринтове, за да осигурим плавно преминаване към новата система.
Задълбочен анализ и идентифициране на проблемите в съществуващата система на клиента
Разработването на React "mini engine" и неговото първоначално тестване
Миграция на първата игра към новата архитектура като тест
По-нататъшно разширяване на разработката, за да включим всички предишни и нови игри
Клиентът намали времето за разработване на играта наполовина - от един месец на две седмици за игра.
Frontend подобренията също така позволиха на два екипа да работят по повече от една игра паралелно, а намаляването на backend зависимостите значително подобри производителността по време на игра.
След като премина към React, компанията успя да привлече повече разработчици с този език, които сега можеха лесно да започнат работа по тази по-стандартизирана, по-бърза и подобрена система.
Тъй като клиентът искаше да предлага модела си като SaaS продукт, тази нова архитектура допълнително увеличи потенциала му за мащабиране и разширяване.
За нас преходът към frontend система, базирана на React, показа колко ефективно е намаляването на backend зависимости и модуларизацията на компоненти за по-бърза разработка - нещо, което виждаме често и ще продължим да прилагаме ефективно и за в бъдеще.
Запазете безплатна консултация. Планирайте среща с нас.