일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- 백준
- 이스티오
- jvm
- mysql
- spring
- list
- MSA
- 보조스트림
- 자바
- SpringBoot
- Kotlin
- K8s
- 토비의 스프링 정리
- gradle
- OS
- GC
- 자바 ORM 표준 JPA 프로그래밍
- Java
- Stream
- Collection
- Real MySQL
- 스트림
- thread
- IntellJ
- JPA
- 스프링
- Stack
- 쿠버네티스
- 토비의 스프링
- redis
Archives
- Today
- Total
목록2021/11/01 (1)
인생을 코딩하다.
[MSA] 분산 트랜잭션(Two-phase commit (2pc))과 사가 패턴(Saga Pattern)
마이크로서비스별로 기능을 분리하고 저장소를 격리함에 따라 이전에는 불거지지 않았던 문제가 생깁니다. 즉, 여러개의 분산된 서비스에 걸쳐 비즈니스 처리를 수행해야 하는 경우 비즈니스 정합성 및 데이터 일관성을 어떻게 보장할 것인지에 관한 문제입니다. 손쉽게 적용할 수 있는 한 가지 방법은 여러 개의 분산된 서비스를 하나의 일관된 트랜잭션으로 묶는 것 입니다. 이것을 분산 트랜잭션 처리 패턴 이라고 합니다. 분산 트랜잭션 처리 패턴 2단계 커밋 방법 2단계 커밋 방법은 분산 데이터베이스 환경에서 원자성을 보장하기 위해 트랜잭션에 포함돼 있는 노드가 커밋되거나 롤백 하는 메커니즘입니다. 그런데 이 방법은 각 서비스에 잠금이 걸력 발생하는 성능 문제 탓에 효율적인 방법이 아닙니다. 특히 각 서비스가 다른 인스턴..
Spring
2021. 11. 1. 16:36