🇷🇺|Разработка платформы: шестнадцатый выпуск

Всем привет! Ниже вы можете ознакомиться с отчетом о разработке платформы за период с 26 ноября по 9 декабря. В это время мы продолжили разработку SDK (RBAC, theabyss_api.dll, встроенный JS API для браузерных игр и т.д.), сосредоточились на улучшении инфраструктуры The Abyss и работе над другими задачами.

Развитие набора средств для разработки (SDK):

1. Параметризованное управление доступом на основе ролей (PRBAC)

В рамках работы над SDK, в последнем спринте, мы собрали техническое задание для внутренней системы параметризованного управления доступом на основе ролей (PRBAC), которая является улучшенной версией RBAC и делает управление ролями более гибким, предоставляя различные настраиваемые привилегии группам пользователей. Вся система состоит из двух классов объектов:

  • Роль (представление пользователей, групп, возможностей и привилегий);
  • Грант (представление членств, ограничений и разрешений).

PRBAC позволяет сделать роли проще и меньше, а само администрирование платформой — более эффективным. Параметризация сделает управление группами более удобным. В свою очередь, решения могут приниматься в зависимости от ситуации.

Карта зависимостей в PRBAC
Процесс создания карты зависимостей

2. Система авторизации сессий «сервер-сервер»

Мы также расширили функционал системы авторизации сессий «сервер-сервер» (S2S) до необходимого для интеграции игр. Этот функционал подробно описан в документации SDK.

3. Theabyss_api.dll

В декабре произошло очередное усиление команды разработчиков платформы The Abyss. Наш новый сотрудник, старший С++ разработчик Oleg Krasnov, приступил к сборке библиотеки всех API-методов The Abyss. Oleg будет одним из ключевых специалистов, работающих над клиентскими библиотеками. Он работает в тесном сотрудничестве с Sergey Zakharchenko (нашим системным архитектором) и командой С#-программистов.

Встроенный JS API для браузерных игр

Проанализировав рынок, мы приняли решение сделать разрабатываемый нами встроенный JS API полностью совместимым с контрактами других платформ. Это позволит ускорить интеграцию игр на The Abyss. Изначально, мы ориентировались на одно из решений, которое считали лучшим на рынке. В действительности же этот вариант представлял собой микс из большого количества технологий и сложных кодов. Это заставило нас разработать собственный встроенный JS API, который было бы максимально легко использовать.

Система управления лицензиями (LMS)

Мы реализовали возможность предзаказа для проекта Atomic Heart — игры ААА-класса, которая станет первой на платформе The Abyss. Выполнение этой задачи стало возможным в результате добавления основных функций LMS во время последнего спринта.

Покрытие тестами и инфраструктура платформы The Abyss

Мы также продолжаем работать над улучшением инфраструктуры The Abyss. В течение последних двух недель:

  • Покрытие интеграционными тестами достигло 80% (что значительно опережает график); реализация многопоточного тестового запуска теперь позволяет производить полное тестирование системы всего за 10 минут;
  • В одном из крупнейших европейских дата-центров были подготовлены и введены в эксплуатацию новые серверы;
  • На новые серверы установлены и настроены cерверные кластеры Kubernetes;
  • Весь наш репозиторий вместе с GitLab переехал на Kubernetes;
  • В настоящее время выполняется развертывание CI/CD на новом месте.

Повышение стабильности и отказоустойчивости

Завершена работа над нашим внутренним фреймворком для микросервисов с RabbitMQ в качестве транспорта. В краткосрочные планы входит перенос всех микросервисов на этот фреймворк. Диаграмма, представленная ниже, показывает одну из самых сложных логических частей нашей структуры:

Часть логики фреймворка The Potato™
Брейншторминг адаптивной темной темы

Адаптивный темный дизайн

Работы, выполненные в рамках этой задачи:

  • Страница игры и главная страница — технологический стек (ReactJS/Redux) для адаптивного темного дизайна для Desktop-клиента готов на 100%;
  • Раздел «Реферальная статистика» — подготовлен визуальный прототип;
  • Сейчас мы разрабатываем функционал окон поддержки пользователей, модальных окон, а также разделов «Мои игры», «Депозит токенов» и «Вывод токенов».

Это все на сегодня. Команда The Abyss будет и дальше рассказывать вам о ходе разработки: отчеты будут выходить дважды в месяц. Выход следующего отчета запланирован на 24 декабря 2018 года.

Следите за новостями! Нам есть, что показать!

Всего наилучшего,

The Abyss Team


Telegram (RU)DiscordFacebookTwitterLinkedInBitcoinTalkRedditVimeoGitHub