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Управление документами (деревевидная структура)
Task Tracker8102tasks_dbЗадачи, настраиваемые workflow и поля, история изменений
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_dbLLM-маршрутизация, чаты, RAG; Yandex — OpenAI-compatible
Notifications8103notifications_dbEmail-уведомления (SMTP, шаблоны, async send)
MCP Gateway8104mcp_gateway_dbВнешние MCP-инструменты для AI Router
Data Tables8105data_tables_db + datasets_dbТаблицы в space, датасеты из Flow Manager
Concierge8106concierge_dbВнешний AI-портал поддержки партнёров
Messaging8107messaging_dbКомментарии, mentions, realtime
Collatio8108collatio_dbСогласование документов
Guard8110guard_dbDLP: маскирование PII/секретов перед LLM
Centrifugo8100Real-time WebSocket доставка событий
NATS BridgeМост NATS → Centrifugo (событийный bridge)

llama-planner / llama-diagram / llama-fill (локальный LLM за профилем llm) — см. installation.md.

Установка prod-стека из готовых образов — ush platform, инструкция: installation.md. Dev и prod compose-файлы: devops/dev (с мониторингом) и devops/prod (те же модули, без Prometheus).

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

КомпонентПортОписание
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