Fantasy Horse Racing Ltd
Развлечения
Великобритания
IOS, Android
Апрель 2024
Проблемные места текущего приложения:
- Медленная работа и систематические выходы из строя, вызванные перегрузкой системы из-за одновременного обрабатывания данных о всех гонках.
- Отсутствие панели администратора со статистикой для автоматической выгрузки данных из базы данных.
- Сложности поддержки и обслуживания из-за использования лямбда-функций AWS Amplify на Python и JavaScript.
Были определены следующие задачи для улучшения приложения:
- Сделать приложение стабильным и способным обрабатывать большое количество гонок.
- Оптимизировать функционал работы с внешним API.
- Разработать панель администратора.
- Внедрить новый функционал: добавление в друзья, покупка игровых монет, лидерборд.
Мы начали с анализа текущего состояния приложения и выявления проблем, указанные клиентом, так и потенциальных проблем. Затем был разработан прототип нового функционала, который позволил нам визуализировать предстоящие обновления и утвердить их с заказчиком.
Для обеспечения стабильной работы и быстрого отклика приложения была предложена гибридная архитектура, сочетающая в себе монолит и микросервисы. Мы также обновили систему баз данных, которая обеспечивала высокую производительность и масштабируемость.
Разработан отдельный микросервис для получения данных о гонках со стороннего API, который позволил значительно снизить нагрузку на основное приложение. Основной проект был переписан на NestJS, что позволило оптимизировать работу серверной части и упростить её поддержку.
Мы обновили дизайн приложения, в соответствии с фирменным стилем, предоставленным заказчиком. Были добавлены важные социальные и игровые элементы, такие как: добавление в друзья, покупка игровых монет и лидерборд.
Приложение «Fantasy Horseracing» стало более стабильным и быстрым, что позволило успешно провести официальный релиз в срок. Отдельный микросервис для работы с внешним API снизил нагрузку на приложение. Переписывание проекта на NestJS оптимизировало серверную часть, упростило поддержку и достигнута способность обрабатывать большое количество гонок. Обновлённый дизайн и добавленный функционал стали более практичными в использовании, повысился уровень геймификации.