docs: 서비스 재구조화 계획 수정

- 포트 번호 변경: 9023, 9024 (서버 번호와 매칭)
- 세션 제거: 1:1 로빙 매핑으로 세션 불필요
- DB 조회 예시: user_id → robing_port (8001)
- 개발 기간 제거: Phase별 구분만 유지
This commit is contained in:
happybell80 2025-08-07 21:31:18 +09:00
parent d69199d5f9
commit ea166865fe

View File

@ -63,11 +63,10 @@
- API 게이트웨이 (사용자 요청 → 로빙 라우팅)
- 인증 체크 (auth-server 연동)
- 사용자-로빙 매핑
- 세션 관리
#### robing-control (구 frontend-base 일부)
- **위치**: 51123 서버
- **포트**: 8100 (새 포트)
- **포트**: 9023
- **역할**:
- 전체 시스템 모니터링 통합
- admin 대시보드 UI 제공
@ -77,7 +76,7 @@
#### robing-monitor (신규)
- **위치**: 51124 서버
- **포트**: 8200
- **포트**: 9024
- **역할**:
- 24서버 로컬 모니터링
- 로빙 상태 체크
@ -101,23 +100,31 @@ sequenceDiagram
A->>U: Google OAuth
U->>A: 인증 완료
A->>G: 토큰 + user_id
G->>F: 세션 생성
G->>F: user_id + robing_port
F->>U: 로그인 완료
Note over F: localStorage에 robing_port 저장
U->>F: 채팅 입력
F->>G: /api/chat (세션)
G->>R: 라우팅 (user_id 포함)
F->>G: /api/chat (user_id)
G->>R: 라우팅 (port 8001)
R->>G: 응답
G->>F: 응답
F->>U: 표시
```
**수정된 흐름 설명:**
1. 로그인 시 DB 조회: user_id → robing_port (8001)
2. Frontend가 robing_port를 localStorage에 저장
3. 이후 모든 요청은 해당 포트로 자동 라우팅
4. 세션 없이도 1:1 매핑 유지
### 3단계: 데이터베이스 통합
#### 단기 계획
- auth-server PostgreSQL을 메인 DB로 사용
- user_id를 모든 서비스에서 통일
- 세션 정보는 Redis 추가 (선택사항)
- user_id → robing_port 매핑 테이블 관리
#### 장기 계획
- 로빙별 SQLite → PostgreSQL 마이그레이션
@ -155,20 +162,20 @@ GET /api/health # 헬스체크
## 구현 우선순위
### Phase 1 (1주)
### Phase 1
1. robing-gateway 기본 구조 생성
2. 인증 흐름 연결
3. 단순 라우팅 (모든 사용자 → rb10508_test)
### Phase 2 (1주)
### Phase 2
1. robing-monitor 구현
2. robing-control 분리
3. 모니터링 대시보드 연결
### Phase 3 (2주)
### Phase 3
1. 사용자-로빙 매핑 로직
2. 워크스페이스 기반 할당
3. 세션 관리 고도화
3. 로빙 포트 자동 할당
### Phase 4 (선택)
1. 간단한 관제 기능
@ -195,8 +202,8 @@ GET /api/health # 헬스체크
## 리스크 및 대응
1. **개발 기간**
- 리스크: 4주 이상 소요 가능
1. **개발 복잡도**
- 리스크: 서비스 분리로 인한 복잡도
- 대응: Phase별 점진적 구현
2. **기존 서비스 중단**