# 서비스 재구조화 계획

**날짜**: 2025-08-07
**상태**: 계획 단계

---

## 현재 문제

1. frontend-customer와 로빙 직접 연결 부재
2. 인증 흐름 불완전 (OAuth → frontend 토큰 전달 없음)
3. DB 분산 (PostgreSQL, ChromaDB, SQLite) - user_id 동기화 문제
4. 서비스 역할 혼재 (frontend-base가 admin UI + 백엔드)

---

## 제안 구조

### robeing-gateway (51123:8100)
**역할**:
- API 게이트웨이 (사용자 → 로빙 라우팅)
- JWT 인증 체크
- 사용자-로빙 매핑 (메모리 캐시)

### robeing-control (51123:9023)
**역할**:
- 시스템 모니터링 통합
- Admin 대시보드 UI
- 51123/51124 서버 상태 조회

### robeing-monitor (51124:9024)
**역할**:
- 로빙 컨테이너 health 체크
- Stats 수집 (메모리, CPU, 응답 시간)
- 로그 수집

---

## 구현 Phase

### Phase 1: robeing-gateway 분리 (미착수)
- frontend-base에서 라우팅 로직 분리
- JWT 인증 미들웨어
- 사용자-로빙 매핑 테이블/캐시

### Phase 2: robeing-control 분리 (미착수)
- Admin UI 분리
- 모니터링 통합 대시보드
- 51123 서버 프로세스 직접 체크

### Phase 3: robeing-monitor 구현 (미착수)
- 51124 서버에 배포
- Docker stats API
- Health check 엔드포인트

---

## 기대 효과

- 관심사 분리 (라우팅 vs 모니터링)
- 확장성 향상 (로빙 추가 시 gateway만 수정)
- 장애 격리 (모니터링 장애가 라우팅에 영향 X)

---

## 참고

- `troubleshooting/250827_frontend_backend_preferences_API_연동_완료.md`
- `311_FastAPI_구조_원칙.md`
