본문으로 건너뛰기

프로젝트 총정리

본 문서는 10-trillion-dollars 이커머스 프로젝트 전체를 한눈에 이해하기 위한 요약 페이지입니다.
설계 과정이 아닌 최종 결과(Outcome) 중심으로 정리했습니다.


1. 프로젝트 상태 요약​

  • 개발 기간: 2024.03.26 ~ 2024.04.30
  • 팀 프로젝트: 총 5명
  • 프로젝트 성격: 풀스택 이커머스 플랫폼(MSA 기반)
  • 역할: 리뷰 도메인 / Redis 동시성 제어 / 캐싱 / AWS SES / Front
  • 현재 운영 상태:
    AWS 비용 문제로 운영을 중단한 이력이 있습니다.
    현재는 온프레미스 환경에서 재구성되어, 비용 제약 없이 테스트 및 기능 시연 목적의 운영을 진행하고 있습니다..

2. 핵심 개선 사항 요약 (문제 → 해결 → 결과)​

프로젝트 진행 중 실제 발생한 문제들과 그 해결 결과를 정리했습니다.


2-1. 주문 동시성 문제​

문제
재고가 1개임에도 동시에 여러 사용자가 주문하면 중복 주문이 발생.
또한 재고 100개를 한 사용자가 주문만 걸고 결제하지 않으면 재고가 묶이는 문제 존재.

해결

  • Redis 분산락 적용
  • 주문 생성 시 Lock 획득
  • 5분 내 결제 미완료 시 스케줄링으로 자동 취소 및 재고 복구

결과

  • 동시 100명 주문 테스트에서도 재고 정합성 100% 유지
  • 미결제 주문으로 재고가 막히는 문제 해결
  • 재고 낭비 및 판매 기회 손실 제거

2-2. 상품 조회 성능 개선 (캐싱)​

문제
메인 상품 전체 조회가 병목이 되어 전체 UX가 느려짐.

해결

  • Redis 캐싱 도입
  • 자주 조회되는 리스트를 캐시에 저장하여 DB 접근 최소화

결과

  • 조회 속도 수십~수백 ms 단축
  • DB 부하 크게 감소
  • 메인 페이지 사용자 경험 개선

2-3. 인프라 비용 최적화​

문제
ECS + Fargate 기반 MSA 구조가 프로젝트 규모 대비 과도한 비용 발생.

해결

  • EC2 단일 서버 내부에 Front, User, Product, Order, Review 컨테이너 운영
  • Docker 기반 단일 호스트 구조로 전환

결과

  • 구조적인 장점 유지하면서 운영 효율성 향상
  • 현실적인 운영 환경

2-4. API Gateway 적용​

문제
프론트엔드가 여러 서버로 직접 요청을 보내 JWT 관리 코드가 중복되고 유지보수가 어려움.

해결

  • 단일 API Gateway를 구축
  • JWT 검증을 Gateway에서 일괄 처리
  • 백엔드 서비스에는 검증된 유저 정보만 전달

결과

  • 인증/인가 흐름 단일화
  • 서버별 중복 코드 제거
  • 요청 관리 구조의 일관성 확보

2-5. 로그 및 모니터링 개선​

문제
MSA 구조에서 로그가 분산되어 장애 분석이 어려움.

해결

  • ELK Stack(Logstash → Elasticsearch → Kibana) 구성
  • Alerting 도입

결과

  • 장애 지점 즉시 파악 가능
  • 로그 분석 속도 향상
  • 전체 시스템 신뢰성 증가

3. 아키텍처 변화 요약​

프로젝트 진행 과정에서 인프라는 아래와 같이 변화했습니다.

초기: MSA + API Gateway + ECS + Fargate
→ 운영 비용 과다 및 관리 복잡성 증가
→ EC2 단일 서버 + Docker Compose 기반으로 재구성
→ 서비스 분리 구조는 유지하면서도 비용과 운영 부담 대폭 감소

핵심 포인트는 다음과 같습니다.

  • 실제로 MSA 아키텍처를 구축하고 운영해본 경험을 얻었습니다.
  • 필요 시 다시 MSA 형태로 즉시 전환할 수 있는 구조적 기반을 그대로 가지고 있습니다.
  • 현재는 프로젝트 규모와 운영 목적을 고려할 때 비용 문제를 해결하기 위한 가장 현실적이고 효율적인 선택을 했습니다.

4. 프로젝트가 제공하는 가치​

  • 이커머스 핵심 기능 전체 구현 (상품, 주문, 결제, 리뷰, 유저, 주소)
  • Redis 기반 동시성 제어로 운영 수준의 재고 정합성 확보
  • 스케줄링 기반 미결제 주문 자동 취소 기능 구현
  • Redis 캐싱을 통해 조회 성능 개선
  • ELK 기반 로그 수집 및 분석 체계 구축
  • Docker 기반 환경으로 로컬과 서버 환경 일관성 확보
  • MSA 기반 서비스 분리 및 API Gateway 운영 경험
  • 비용 최적화 및 인프라 재설계 경험 포함

5. 배포 관련 안내​

현재 AWS 상시 운영은 비용 문제로 중단되었지만:

  • Docker 기반으로 언제든 재배포 가능
  • GitHub Actions 기반 CI/CD 구성 완료
  • AWS 인프라 구성 또한 문서화 완료

시연이 필요한 경우 즉시 재구동 가능한 상태입니다.


문서 안내​

이 문서는 Overview, ERD, Architecture, CI/CD, 기술적 의사결정, 트러블슈팅 등의 개별 페이지 내용을
최종 결과 중심으로 요약한 페이지입니다.

세부 설명은 각 개별 문서에서 확인할 수 있습니다.