Skip to content

Unishift Platform — Документация сервисов

Обзор архитектуры

Unishift Platform — микросервисная платформа для управления пространствами, документами, командами, пайплайнами, календарями, медиафайлами и аутентификацией пользователей. Построена на Go с использованием PostgreSQL, NATS и Centrifugo для real-time событий.

Карта сервисов

СервисПортБДОписание
Gateway8090Единая точка входа, проксирование к бэкенд-сервисам
Auth8091auth_dbАутентификация и авторизация (JWT, OAuth 2.0, сессии)
Spaces8092spaces_dbУправление пространствами (workspaces)
Documents8093documents_dbУправление документами (деревевидная структура)
Command Manager8094command_manager_dbКоманды, коллекции, задачи, gRPC-раннеры
Scheduler8095scheduler_dbКалендари и планирование задач
Storage8096storage_dbФайловое хранилище (локальный диск / S3/MinIO)
Env Manager8097env_manager_dbЗашифрованное хранилище конфигов и секретов
Flow Manager8099flow_manager_dbОркестрация пайплайнов (Starlark, in-memory тестирование)
Spark Grid8087spark_gridМедиа-хранилище (превью, обложки, теги)
AI Router8101ai_router_dbМаршрутизация LLM-запросов, чаты, RAG (pgvector)
Centrifugo8100Real-time WebSocket доставка событий
NATS BridgeМост NATS → Centrifugo (событийный bridge)

Инфраструктура

КомпонентПортОписание
NATS4222Шина событий (message broker)
PostgreSQL5432Основная БД для всех сервисов (с расширением pgvector)
MinIO9000/9001S3-совместимое хранилище

Технологический стек

  • Язык: Go 1.24-1.26
  • HTTP: Gin
  • ORM: GORM
  • БД: PostgreSQL 15-16
  • Мессенджинг: NATS
  • Real-time: Centrifugo + WebSocket
  • API Docs: Swagger/OpenAPI (swaggo)
  • Архитектура: Clean Architecture (domain / usecase / repository / delivery / infrastructure)
  • Контейнеризация: Docker + Docker Compose