DUKKU(덕쿠) 는 단순한 상품 판매를 넘어, 팬들이 진심을 다해 활동하는 '덕질'의 가치를 극대화하기 위해 기획되었습니다. 아티스트 굿즈 판매, 한정판 예약 구매, 그리고 팬들 간의 소통을 아우르는 고성능 마이크로서비스 아키텍처(MSA)를 지향합니다.
본 프로젝트는 9개의 독립적인 마이크로서비스와 1개의 통합 모니터링 서비스로 구성되어 있으며, 대규모 트래픽 처리와 안정적인 결제, 데이터 기반의 관찰 가능성(Observability)을 실천하는 데 중점을 두었습니다.
실제 구현된 도메인별 서비스와 인프라 스택의 핵심 기능입니다.
- 스마트 굿즈 카탈로그: 아티스트별/카테고리별 필터링과 상세 재고 관리를 지원하는 상품 시스템입니다.
- 주문 처리 라이프사이클: 선착순 및 예약 구매 시 발생하는 트래픽 집중을 고려하여 주문의 생성부터 이행까지의 전 과정을 안정적으로 처리합니다.
- 통합 결제 및 예치금: 결제 승인/환불 프로세스와 더불어 사용자별 예치금 충전 및 잔액 관리 기능을 제공합니다.
- 쿠폰 프로모션: 등급별, 이벤트별 쿠폰 발행 및 사용 로직을 통해 유저 혜택을 극대화합니다.
- 자동화된 정산: 입점사 및 파트너사 간의 복잡한 금융 트랜잭션을 자동화하여 정산 처리를 수행합니다.
- 사용자 인증 관리: 전용
auth서비스를 통해 보안 로그인, 회원가입 및 JWT 기반의 권한 체계를 운영합니다. - AI 개인화 서비스: 사용자 활동 로그를 분석하여 취향에 맞는 아티스트나 굿즈를 제안하는 독립적인 AI 모듈을 통합했습니다.
- 9+1 서비스 구조: 9개의 비즈니스 마이크로서비스와 이들을 지원하는 1개의 전용 모니터링 서비스 체계입니다.
- 실시간 관찰성: Prometheus, Grafana와 MongoDB를 연동하여 시스템 메트릭과 서비스 로그를 실시간으로 수집하고 분석합니다.
- 클라우드 네이티브: Docker와 Kubernetes(K8s)를 활용하여 확장성과 회복 탄력성을 갖춘 환경에 배포됩니다.
멀티 모듈 Gradle 구조를 채택하여 각 디렉토리가 독립적인 서비스 또는 공용 모듈을 나타냅니다.
beadv4_4_semicolon_BE[dukku]/
├── ai/ # AI 기능 마이크로서비스
├── auth/ # 인증 및 인가 마이크로서비스
├── common/ # 공통 유틸리티 및 설정 공유 모듈
├── coupon/ # 쿠폰 관리 마이크로서비스
├── deposit/ # 예치금 관리 마이크로서비스
├── docs/ # 프로젝트 문서 및 사양서
├── docker-compose.local.*.yml # 로컬 개발용 인프라 구성 (DB, 모니터링, Nginx 등)
├── k8s/ # 클러스터 배포를 위한 Kubernetes 매니페스트
├── monitoring/ # 모니터링 설정 (Prometheus, MongoDB 구성 등)
├── nginx-conf/ # Nginx 서버 설정 파일
├── order/ # 주문 관리 마이크로서비스
├── payment/ # 결제 처리 마이크로서비스
├── product/ # 상품 카탈로그 관리 마이크로서비스
├── settlement/ # 정산 처리 마이크로서비스
├── user/ # 사용자 관리 마이크로서비스
└── build.gradle # 전체 프로젝트 빌드 설정
Semicolon 프로젝트에 대한 기여를 환영합니다! 상세 지침은 내부 문서를 참조해 주세요.
나만의 덕질 파트너, DUKKU Made with ❤️ by prgrms-be-adv-devcourse Team 5 Semicolon