SANGWOO.LOG
🏗️
★ Pinned
ssul
#paystream#msa#kafka#spring

PayStream 프로젝트 개요

2025.09.10

PayStream은 대용량 트래픽을 전제로 한 MSA 기반 커머스·예약 서비스 사이드 프로젝트입니다. 숙소·특가 도메인을 중심으로 주문, 결제, 재고, 알림, 어드민 대시보드까지 이벤트 기반으로 연결하는 것이 목표입니다.

이 글은 PayStream 시리즈의 허브(목차) 역할을 합니다. 설계 결정, API 명세, 연동 기록은 아래 폴더별 글에서 이어집니다.


프로젝트 목표

항목 내용
핵심 주제 대용량 트래픽 · MSA · 이벤트 드리븐 아키텍처
도메인 숙소·특가 예약/결제 (PayStream-web UI 기준)
백엔드 Spring Boot · Spring Cloud · Kafka · MySQL · Redis
프론트 Next.js 15 (PayStream-web, 웹뷰·PWA 조합)
인프라 AWS (EKS, RDS 등), Kubernetes 기반 배포 검토

한 줄로 말하면, 실서비스에 가까운 규모감을 목표로 기술 스택과 역할 분담을 먼저 정리하고, 알림·API 연동부터 점진적으로 붙여 나가는 프로젝트입니다.


서비스 구성 (개략)

서비스 플로우

서비스 역할 주요 스택
주문 주문 생성 후 이벤트 발행 Spring Boot, JPA, Kafka Producer
결제 결제 요청 이벤트 처리, PG 연동 Spring Boot, Kafka Consumer
재고 Redis 캐시 + MySQL 최종 저장 Redis, MySQL, Kafka Consumer
알림 이메일·푸시 등 채널별 발송 Spring Boot, Kafka, 외부 알림 API
어드민 주문/결제/재고 모니터링 React, Spring Cloud Gateway
공통 서비스 디스커버리·게이트웨이 Eureka, Config Server, API Gateway

브라우저는 API Gateway 단일 진입점(localhost:8000 등)으로만 백엔드에 접근합니다. 마이크로서비스 포트를 프론트에서 직접 호출하지 않습니다.


내 역할

담당 영역

프로젝트 내에서 알림 서비스어드민 대시보드를 메인으로 담당합니다. 결제·주문은 규모가 크지만, 알림은 Kafka 이벤트 연동·API 설계·프론트 연동까지 한 흐름으로 검증하기 좋은 영역이라 우선순위를 두었습니다.


콘텐츠 로드맵

PayStream 관련 글은 content/projects/paystream/ 아래 폴더로 나뉩니다.

폴더 용도 현재 글
00-overview 프로젝트 소개·로드맵 이 글
10-worklog 주간/연동 작업 기록 킥오프 & 기술 스택 · 알림 우선순위 재정리 · 알림 API 연동 시행착오
20-architecture 아키텍처·설계 결정 Kafka 토픽 & 이벤트 흐름
30-api API 명세 알림 API 명세서
40-troubleshooting 장애·에러 분석 worklog에 통합 기록 중
50-retrospective 회고 (작성 예정)

읽는 순서 (추천)

  1. 이 글 — 전체 그림
  2. PayStream Project (킥오프) — 스택 선정 이유
  3. Kafka 토픽 & 이벤트 흐름 — MSA 이벤트 설계
  4. API 명세서를 만들어보자! — 알림 도메인 API·ERD
  5. 알림 연동 우선순위 재정리 — Web Push vs FCM, 연동 순서
  6. 알림 API 연동 시행착오 — 게이트웨이·JWT 실전 기록

진행 상황 (2026.04 기준)

  • MSA·Kafka 중심 기술 스택 합의
  • 알림(Notification) API 명세·아키텍처 정리
  • 알림 채널 우선순위 재정리 (API → 이메일 → PWA → Web Push)
  • PayStream-web ↔ API Gateway 알림 ping·POST 연동 검증
  • Web Push · VAPID · 구독 API
  • 20-architecture Kafka 토픽·이벤트 흐름 설계 문서
  • 프로덕션 배포·관측성 (EKS, 모니터링)

태그로 모아보기

Posts 페이지 사이드바 TAGS에서 #paystream으로 이 시리즈 글만 모아볼 수 있습니다.

  • #paystream — PayStream 전체
  • #notification — 알림 도메인
  • #kafka · #spring — 백엔드 스택
  • #nextjs · #api-gateway — 프론트 연동

다음에 쓸 글 (메모)

  • 40-troubleshooting/ — consumer lag, 게이트웨이 CORS 등 이슈 분리
  • 50-retrospective/ — 1차 연동 회고

구조·frontmatter 규칙은 레포의 docs/paystream/README.md를 참고합니다.

👇 도움이 되셨다면 👇

© Powered by moowoo