-
Отрасль
-
Услуга

WhiteFlo представляет собой набор модулей на Symfony 5, многократно используемых в различных проектах.
В настоящий момент имеется более 20 модулей, реализующих функциональность продукта на различных уровнях:
Зависимости между модулями организованы таким образом, чтобы можно было подключить нужные части функциональности на нужном уровне, а остальное реализовать самостоятельно. Например, подключить только бизнес-логику криптопроцессинга и api, затем интегрировать в свой продукт.
Можно конфигурировать каждый модуль и переопределять его функциональность различными способами: расширять модель, переопределять любой сервис, делать свои обработчики команд, запросов и событий.
Высокоуровневый код и бизнес-логика покрыты тестами.
Большинство команд и событий могут обрабатываться в асинхронном режиме. Для высоконагруженной распределенной системы можно использовать любой message broker, который поддерживается Symfony Messenger, например, Amazon SQS, RabbitMQ. В стандартной поставке обычно используется очередь в СУБД, это упрощает архитектуру и снижает затраты.
Для запуска конкретного проекта необходимые модули включаются в проект, построенный обычно как веб-приложение с монолитной архитектурой, то есть один проект Symfony на публичную часть сайта, клиентскую часть, админку и REST API.
Создание нового проекта состоит из следующих шагов:
Проекты на модулях CryptoPSP мы деплоим на AWS. Создаем площадку через Terraform. На Gitlab CI происходит сборка проекта в docker images, проводится автоматическое тестирование. Нужная версия по команде деплоится на площадку, применяется blue/green deployment.
С подробным описанием бизнес процессов и use cases продукта можно ознакомиться на сайте продукта: whiteflo.com