더북(TheBook)

대책: 비관적 관점

비관적 관점(pessimistic view)은 더티 읽기로 인한 비즈니스 리스크를 최소화하기 위해 사가 단계의 순서를 재조정하는 것입니다. 더티 읽기 예를 들었던 시나리오를 한 번 더 생각해 봅시다. 주문 취소 사가 단계를 다음과 같이 재조정하면 주문 생성 사가가 신용 잔고를 더티 읽기해서 소비자 신용 한도를 초과하는 주문을 생성할 위험성을 줄일 수 있습니다.

1. 주문 서비스: 주문을 취소 상태로 변경합니다.

2. 배달 서비스: 배달을 취소합니다.

3. 회계 서비스: 신용 잔고를 늘립니다.

 

이렇게 순서를 바꾸면 신용 잔고는 재시도 가능 트랜잭션에서 증가하므로 더티 읽기 가능성은 사라집니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.