반응형
Two Phase Commit
의 약자인 2pc는 CQRS 의 패턴과 비슷하게 트랜잭션이 실패할 경우 rollback을 대비해서 존재하는 것이다.
CQRS 에 대해서는 아래 참고 포스팅을 참고 하면 된다.
CQRS에 비해서 2pc는 어떻게 보면 더 간단하다고 생각이 들수도 있지만.
트랜잭션의 유형에 따라 , 상황에 따라 CQRS 를 사용해도 되고 2pc를 사용해도 된다.
그럼 이 2pc는
처음 시작하는 트랜잭션부터 끝나는 지점까지 모든 작업이 실패가 없이 이루어 진다면 그때 한번에 쿼리를 날리고 commit 을 하게 된다.
그렇게 된다면 rollback을 할일이 없어져 트랜잭션이 꼬이는 부분에서는 해결이 된다.
<begin> - 시작 : 독립적인 일을 시작하는 것
<end> - 끝 : 준비 이전까지 일을 끝내는 것
<prepare> - 준비
<commit> - 결과 반영
- 진행단계
- begin -> end -> prepare -> commit
로 이루어진다.
참고 포스팅
https://thenicesj.tistory.com/251
반응형
'IT > Knowledge' 카테고리의 다른 글
[Beacon] 근거리 데이터 통신 > 비콘 (44) | 2022.11.15 |
---|---|
run / debug 차이 (29) | 2022.11.10 |
교착상태 / 기아상태 (48) | 2022.11.03 |
git / github 차이 (32) | 2022.11.02 |
DevOps 에서의 Blue-Green 배포, A/B 테스트, Canary Release (39) | 2022.10.29 |
댓글