tgoop.com/super_oleg_dev/154
Last Update:
Следующий C4 уровень - Containers.
Тут я уже выделяю составляющие платформы - API, база данных, UI и CLI утилита.
И сторонние сервисы - файловое хранилище s3 и Developer Platform.
За скобками остаются системы для сбора логов, метрик, ошибок, алертов, они подразумеваются но по хорошему стоит их рисовать сразу.
Тут же можно показать и технический стек (фактически описывал я его позже, при проектировании составляющих платформы, на C4 уровнях Components / Code)
API платформы:
- Node.js (писать и поддерживать сервис будут инженеры из Coretech Frontend :) )
- Nest.js (мы любим DI)
- @nestjs/swagger
- Prisma ORM (решит за нас ряд вопросов с БД, например инициализация и миграции)
- aws-sdk (работа с s3)
- prom-client (метрики)
- terminus (health-checks и graceful degradation, обязательно для k8s)
- @opentelemetry/sdk-node
(трейсинг)
UI платформы:
- Tramvai.js (ну вы понимаете)
- Tinkoff UI (наш внутренний React UI-kit, пока еще не в open-source как Taiga)
- @micro-sentry/browser
(наша open-source либа для отправки ошибок в Sentry и подобные сервисы)
- Клиенты для отправки логов и аналитики во внутренние сервисы
База данных - реляционная (планируется много связей), есть внутренняя DBaaS - PostgreSQL.
А также, для переиспользования в UI и CLI, планируется генерация API клиентов из Swagger схем с помощью любой подходящей библиотеки (например swagger-typescript-api)
BY SuperOleg dev notes
Share with your friend now:
tgoop.com/super_oleg_dev/154