[spring cloud][ecommerce] 개요 & 구성
·
프레임워크/자바 스프링
프로젝트 특징사용자는 3가지 마이크로 서비스 사용 가능Docker를 활용한 개발 환경 구축Redis를 활용한 캐싱 전략, 대규모 주문 처리 기술관련 도메인배민, 무신사, 29cm 등의 e-commerce사용 기술 및 개발 환경 *많은 기업에서 실무에 사용되는 라이브러리를 기준으로 설계되어 있습니다.Docker / Docker ComposeSpring BootJava/KotlinJWTHTTP Request / Response프로그래밍 언어: JVM 언어(Java/Kotlin) 버전 17 이상빌드 툴: Gradle프레임워크: SpringBoot 3.XX초기 구성위 이미지는 마이크로서비스 아키텍처(MSA)를 사용하여 구성된 시스템으로, 여러 서비스가 독립적으로 배포되고 관리될 수 있도록 설계되었습니다. 각 서..
[MSA] SAGA 패턴은 무엇?
·
스케쥴/스터디
1. MSA에서의 트랜잭션 문제   - 분산 환경에서 단일 DBMS의 트랜잭션 기능으로 해결 불가   - Two-Phase Commit의 한계: 성능 문제, 서비스 간 통제 어려움2. SAGA 패턴   - 정의: 마이크로서비스 간 이벤트 교환으로 분산 환경에서 원자성 보장   - 특징: 트랜잭션 관리 주체가 Application, 최종 일관성 달성3. SAGA 패턴의 종류   a) Choreography-based SAGA      - 각 서비스가 자체적으로 트랜잭션 관리, 이벤트 발행      - 장점: 구성 용이      - 단점: 전체 트랜잭션 상태 파악 어려움   b) Orchestration-based SAGA      - 중앙 Saga Manager가 트랜잭션 조정      - 장점: 구현/테..