250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- react
- 클린코드
- vue.js
- 인프런백기선
- CleanCode
- 도메인 주도 개발 시작하기
- 이펙티브자바
- DDD
- AWS
- 알고리즘분석
- 자바
- jpa
- AWS RDS
- MariaDB
- 이팩티브 자바
- 자바스터디
- java
- aop
- SQL쿡북
- mysql
- 자료구조
- 인프런김영한
- 이펙티브 자바
- 혼공SQL
- 인덱스
- 알고리즘
- 자바예외
- 네트워크
- 기술면접
- 스프링부트와AWS로혼자구현하는웹서비스
Archives
- Today
- Total
목록애그리거트 트랜잭션 관리 (1)
기록이 힘이다.

애그리거트와 트랜잭션 두 스레드는 각각 트랜잭션을 커밋할 때 수정한 내용을 DBMS에 반영한다. 즉, 배송 상태로 바뀌고 배송지 정보도 바뀌게 된다. 이 순서의 문제점은 운영자는 기존 배송지 정보를 이용해서 배송 상태로 변경했는데 그 사이 고객은 배송지 정보를 변경했다는 점이다. 즉, 애그리거트의 일관성이 깨지는 것이다. 이런 문제가 발생하지 않도록 하려면 두 가지 중 하나를 해야 한다. 운영자가 배송지 정보를 조회하고 상태를 변경하는 동안 고객이 애그리거트를 수정하지 못하게 막는다. 운영자가 배송지 정보를 조회한 이후에 고객이 정보를 변경하면 운영자가 에그리거트를 다시 조회한 뒤 수정하도록 한다. 애그리거트에 대해 사용할 수 있는 대표적인 트랜잭션 처리 방식에는 선점(Pressimistic) 잠금과 비..
IT서적/도메인 주도 개발 시작하기
2023. 7. 29. 23:30