AIOps построен как микросервисная платформа с событийно-ориентированной архитектурой (Event-Driven Architecture). Система следует принципам Clean Architecture, Domain-Driven Design и использует проверенные паттерны для обеспечения надежности, масштабируемости и безопасности.
Ключевые архитектурные решения
Микросервисная архитектура
- Каждый сервис владеет своими данными
- gRPC для internal communication
- REST для public APIs
- Kafka для асинхронных событий
Event-Driven Architecture
- Transactional Outbox для надежной доставки событий
- Event sourcing для критических операций
- Saga pattern для распределенных транзакций
Clean Architecture
- Разделение на слои: Core, Use Case, Infrastructure, API
- Dependency Inversion — зависимости направлены к core
- Repository Pattern для абстракции доступа к данным
Безопасность
- JWT-based authentication через API Gateway
- Argon2id для хранения паролей
- Изоляция credentials в отдельном сервисе
- Constant-time verification для защиты от timing attacks
Быстрая навигация по задачам
| Задача | Документ |
|---|---|
| Увидеть схему сервисов и потоков | Высокоуровневая диаграмма |
| Понять границы системы | Что входит, Что не входит |
| Разобраться в потоках данных | Потоки данных → Онлайн, События |
| Понять будущую модель control plane | Control Plane |
| Безопасность: auth, секреты, шифрование | Архитектура безопасности |
| Надёжность, SLO, отказоустойчивость | Надёжность и масштабируемость |
| Принципы проектирования API и событий | Архитектурные принципы |
Разделы
- Обзор системы — обзор системы, что входит и не входит в scope
- Модель C4 — диаграммы контекста, контейнеров, компонентов, развёртывания
- Интеграционная архитектура — внешние интеграции, API, webhooks
- Потоки данных — потоки данных: онлайн, пакетная обработка, события
- Control Plane — концепция операций, capabilities, DAG, marketplace-сценариев и вмешательств
- Архитектура безопасности — аутентификация, авторизация, секреты, шифрование
- Надёжность и масштабируемость — SLA/SLO, отказоустойчивость, восстановление
- Архитектурные принципы — принципы проектирования
Связанные страницы
Продукт
- Продукт — продуктовый контекст системы
- Фича: Аутентификация — как реализована аутентификация
Домены
- Домены — доменная модель
- Домен Identity — домен идентичности
Сервисы
- Инженерия / Сервисы — каталог сервисов
- Каталог сервисов — полный список с зависимостями
Инженерия
- Обзор бэкенда — архитектурные паттерны backend
- Обзор данных — архитектура данных
Платформа
- Платформа / Инфраструктура — инфраструктура (Kubernetes, PostgreSQL, Kafka)
- Платформа / Наблюдаемость — мониторинг и трейсинг