Техническая архитектура
Описание модульной структуры платформы
Техническая архитектура
Платформа Манитон построена на модульной микросервисной архитектуре (Microservices Architecture) с использованием событийно-ориентированного подхода (Event-Driven).
Система разделена на два изолированных контура:
- Защищенный контур ЦФА (РФ) — где происходит юридически значимый выпуск и учет активов.
- Внешний интеграционный контур — для связи с международными партнерами и шлюзами.
Схема взаимодействия модулей (L1)
Ниже представлена детализированная схема компонентов и потоков данных.
Основные компоненты
1. Identity & Auth (Личность и Доступ)
Центральный узел управления пользователями и правами. Реализован в apps/services/auth.
- Технологии: NestJS / Keycloak / Drizzle ORM.
- Функции:
- Интеграция с Keycloak (IdP).
- Ведение профилей KYC и контроль лимитов 259-ФЗ.
- Санкционный скрининг и риск-скоринг.
- RBAC (Role-Based Access Control) для всех сервисов.
2. CFA-Core (Ядро Реестра)
Критический компонент, отвечающий за целостность реестра ЦФА.
- Технологии: Rust / Node.js.
- Функции:
- Формирование транзакций для блокчейна.
- Управление жизненным циклом смарт-контрактов.
- Синхронизация состояния DLT с локальной БД.
- Криптографическая подпись (через внешний Signer/HSM).
3. Ledger-DB (Операционный учет)
Реляционная база данных (PostgreSQL), являющаяся "быстрой" проекцией блокчейна и хранилищем off-chain данных.
- Хранит: Балансы пользователей, историю операций, профили, настройки инструментов.
- Обновляется: Асинхронно через обработку событий из Kafka (паттерн Event Sourcing / CQRS projection).
4. Hyperledger Besu (DLT Layer)
Приватная сеть на базе протокола Ethereum.
- Консенсус: QBFT (Quorum Byzantine Fault Tolerance) — гарантирует финальность транзакций (без форков).
- Роль: Юридически значимый реестр прав. Смарт-контракты фиксируют выпуск, переводы и погашение.
5. Besu Connector Service
Микросервис-шлюз для работы с Besu по JSON‑RPC. Реализован в apps/services/besu-connector.
- Язык: Go.
- Вход/выход: Только через Kafka (команды/события).
- Функции: инкапсуляция JSON-RPC, мониторинг цепочки, проверка хэшей.
6. Event Bus (Kafka)
Шина обмена сообщениями.
- Обеспечивает слабую связность (loose coupling) между сервисами.
- Гарантирует доставку сообщений о критических событиях (At-Least-Once).
Типовой поток данных (Sequence)
Пример взаимодействия при выпуске ЦФА: