Table Eat Now는
식당 예약 · 웨이팅 · 결제 · 리뷰 · 쿠폰 · 이벤트 등
고객과 식당을 위한 All-in-One 통합 예약 플랫폼입니다.
고객에게는 편리한 예약 경험을,
식당에게는 효율적인 운영 관리 도구를 제공합니다.
식당 예약 서비스 플랫폼
- 식당, 사용자, 예약, 결제, 웨이팅, 리뷰 등 통합 관리 서비스
- 7,000개 가맹점, 식당별 최대 10,000명 동시 예약 처리
- 프로모션 동시 참여자 1,000명 이상을 고려한 시스템 안정성 확보
| 분류 | 기술 |
|---|---|
| Language | Java 17 |
| Framework | Spring Boot 3.4.4, Spring Cloud (Eureka, Gateway, OpenFeign) |
| DB | PostgreSQL, Redis |
| ORM | Spring Data JPA, QueryDSL 5.0.0 |
| Messaging | Apache Kafka |
| Infra | Docker, AWS EC2, AWS Elastic Beanstalk, CloudWatch, GitHub Actions |
| Monitoring | Prometheus, Grafana, Zipkin |
| Testing | JUnit 5, Mockito, JaCoCo, SonarQube |
| Tools | Notion, Slack, GitHub, Toss Payments |
- API 명세: API 정의서 (Notion)
- ERD: ERD 보기 (Notion)
- 아키텍처: 아키텍처 개요
- 스케줄러 분산락 적용
- DB Polling 방식 리팩토링
- Cursor + FixedDelay 기반 스케줄러 전환
- GitHub Actions 개선
- 프로모션 성능 테스트
- 카프카 배치 컨슈머 적용
- 식당, 예약, 리뷰, 결제, 쿠폰, 프로모션 등 CRUD 및 동시성 고려
- MSA 구조에 기반한 도메인 분리 및 서비스 간 Kafka 연동
- 실시간 예약 및 대기열 처리, 리뷰 평점 주기적 갱신, 알림 시스템
- 테스트 커버리지 80% 이상 기준으로 PR 제한 (SonarQube, JaCoCo 연동)
| 이름 | 포지션 | 주요 기여 |
|---|---|---|
| 한지훈 | 팀장 Notification / Promotion |
* Kafka 기반 알림 시스템 * Redis 딜레이 큐 * DLQ 및 모니터링 * 프로모션 성능 최적화 및 원자성 보장 |
| 박지은 | 테크리더 Restaurant / Reservation |
* 예약 유효성 검증 전략 * Kafka 상태 관리 * DLQ * FeignClient 통한 멱등성 관리 * 테스트 자동화 환경 구성 |
| 황하온 | Coupon / Waiting | * 쿠폰 전략/루아스크립트 처리 * 카프카 배치 컨슈머/DLQ 활용 * Redis ZSet 기반 대기열 활용 * GitHub Actions CI/CD |
| 강혜주 | Review / Payment | * Redisson 분산락 + 커서 기반 배치 최적화 * RestClient PG 연동 * Kafka DLQ + 지표 수집 * 데코레이터 패턴 기반 TaskExecutor 구성 |
