◾ 0. 프로젝트 소개

ChatGPT Image 2026년 6월 12일 오후 02_07_26.png

1) 프로젝트 개요

2) 도메인 정의 및 역할 분담

이름 마이크로서비스 설명 비고
최리아 User Service 회원가입, 로그인, 권한 관리, JWT 인증 개발 리드
API Gateway
DevOps
도경민 Store Service 매장 등록 및 관리, 메뉴 관리, 필터검색 제공 Core Business Domain
최준근 Review Service 리뷰 CRUD, 별점 집계, 평점 이벤트 발행 CI/CD
이성근 Notification Service Kafka 이벤트 수신, Slack 알림 발송, 알림함 관리 Slack Web API
이진일 Reservation Service,
Payment Reservation 예약 슬롯 관리, 예약 신청/확정/취소, 오버부킹 방지 Main Feature
Kafka Event
조혜은 Waiting Service 웨이팅 등록, Redis 순번 관리, 입장 처리 Main Feature
Kafka Event

3) 권한 체계

역할 설명
USER 매장 검색, 예약/웨이팅 신청, 리뷰 작성
OWNER 매장 등록·관리, 예약 확정·거절, 웨이팅 입장 처리. 가입 후 MASTER 승인 필요
MASTER 전체 권한. OWNER 승인·거절, 회원 관리

4) 마이크로서비스 구성

본 시스템은 책임의 분리와 독립적 확장성을 위해 7개의 마이크로서비스로 구성됩니다.

서비스명 포트 담당 DB 핵심 테이블 핵심 기능
user-service 8001 USER p_users JWT 기반 인증/인가, ROLE 관리, OWNER 승인 처리, Redis Refresh Token·블랙리스트
store-service 8002 STORE p_store_categories,
p_stores,
p_store_hours, p_store_amenities,
p_store_images,
p_menus 매장·메뉴 CRUD, 카테고리·지역·인원 필터 검색, Redis 캐싱·랭킹, Kafka Consumer (review.rating-updated)
review-service 8006 REVIEW p_reviews,
p_review_images,
p_review_reports,
p_review_outbox_events,
p_review_replies
reservation-service 8003 RESERVATION p_reservation_slots, p_reservations, p_no_show_penalties, p_reservation_notifications 예약 슬롯 관리, 예약 신청·확정·취소, 오버부킹 방지, 예약금 상태 관리, Kafka 발행
payment-service 8007 PAYMENT p_payments
waiting-service 8004 WAITING p_waitings, p_waiting_summaries Redis Sorted Set 순번 관리, 입장·미입장 처리, SSE 실시간 알림, Kafka 발행
notification-service 8005 NOTIFICATION p_notifications,
p_slack_send_logs Kafka 이벤트 수신 (웨이팅·예약), Slack Webhook 발송, 알림함 저장·읽음 처리

◾ 1. 핵심 비즈니스 로직 및 워크플로우

Kafka 기반 Choreography 이벤트 통신 구조

1) 예약 프로세스

2) 웨이팅 프로세스

3) 알림발송 프로세스