Appearance
Руководство по миграции к микросервисной архитектуре
Источник: ранее файл
services/MIGRATION_GUIDE.md(перенесён и стандартизирован).
Примечание: Для быстрого старта см. startup-guide.md.
✅ Что уже сделано
Auth Service
- ✅ Модели
UserиRoleскопированы и адаптированы. - ✅ Все handlers скопированы и адаптированы (auth, rbac, csrf, two_factor, ratelimit, sanitize).
- ✅ Убрана зависимость от
Organizations. - ✅ База данных
nimbus_authнастроена. - ✅ Dockerfile создан.
- ✅ Готов к использованию.
Core Service
- ✅ Все модели скопированы (кроме
User,Role,Bill). - ✅ Базовые handlers созданы (organizations).
- ✅ Auth‑middleware для проверки JWT‑токенов от auth-service.
- ✅ База данных
nimbus_coreнастроена. - ✅ Dockerfile создан.
- ⚠️ Остальные handlers (houses, rooms, personal_accounts, utility_services, contracts) можно добавить по мере необходимости.
Billing Service
- ✅ Заготовка создана.
- ✅ Модель
Billскопирована. - ✅ База данных
nimbus_billingнастроена. - ✅ Dockerfile создан.
- ⚠️ Требуется реализация Calculation Engine и Worker Pool.
Следующие шаги
1. Добавить остальные handlers для Core Service
Handlers можно добавлять постепенно по мере необходимости:
houses.go— CRUD для домов.rooms.go— CRUD для помещений.personal_accounts.go— CRUD для лицевых счетов.utility_services.go— CRUD для услуг ЖКХ.contracts.go— CRUD для договоров.entrances.go— CRUD для подъездов.readings.go— CRUD для показаний счётчиков.
2. Реализовать Billing Service
Согласно документации MICROSERVICES_ARCHITECTURE_ANALYSIS.md:
- Calculation Engine для расчёта начислений.
- Worker Pool для фоновых задач.
- Job Queue на Redis.
- Мониторинг процесса расчёта.
3. Миграция данных
См. раздел «Миграция данных из монолита» в startup-guide.md.
Порты
- Auth Service:
http://localhost:8001. - Core Service:
http://localhost:8002. - Billing Service:
http://localhost:8003.
Базы данных
- Auth DB:
localhost:5433(nimbus_auth). - Core DB:
localhost:5434(nimbus_core). - Billing DB:
localhost:5435(nimbus_billing). - Redis:
localhost:6379.