기술 결정 문서 (ADR)

Co-Talk 프로젝트의 주요 기술 결정과 그 배경을 기록한 문서입니다.


아키텍처 결정

문서 결정 설명
MSA vs Monolith 모듈형 모놀리식 초기 개발 속도 우선, 점진적 MSA 전환

백엔드 결정

문서 결정 설명
Database Selection PostgreSQL 관계형 데이터, ACID, JSONB 지원
Spring MVC vs WebFlux Spring MVC Virtual Threads로 충분한 성능, 개발 생산성
Redis Streams Ordering Redis Streams 메시지 순서 보장, 초기 단순함

프론트엔드 결정

문서 결정 설명
Frontend Platform Strategy React + Flutter 웹 MVP, 모바일 확장
Flutter vs React Native Flutter 성능, UI 일관성, 크로스 플랫폼

ADR 작성 원칙

각 ADR은 다음 구조를 따릅니다:

  1. 컨텍스트: 결정이 필요한 상황
  2. 고려한 옵션: 검토한 대안들
  3. 결정: 최종 선택
  4. 근거: 선택 이유
  5. 결과: 예상되는 영향