본문 바로가기
spring

Transection

by dev_jisu 2023. 3. 14.

Transection 이란 따로 수행에 성공해선 안되는 하나의 단위 이다 .

 

만약 

A가 가진돈이 10000원이고 5000원을 B에게 보냈다면 

UPDATE A (10000-5000),UPDATE B(0+5000) 이 이루어 져야 한다 . 

두개의 업데이트 문이 이루어 져야하는데 

만약

업데이트가 한가지만 이루어져  UPDATE A (10000-5000)만 이루어 졌다면 

5000원이 순식간에 사라지고 A와 B의 갈등이 생길것이다 . 

이러한 일들을 막고자 Transection으로 UPDATE A와 B 가 전부 성공, 전부 실패로 만들어 줘야 한다.

 

트랜잭션은  ACID 조건을 충족해야 한다.

A(atomicity)       원자성 :  하나의 트랜잭션이 더 이상 작게 쪼갤 수 없는 최소한의 업무 단위이다.(All Or Nothing)C(consistency)  일관성:   실행 실패시 RollBack 되어야 함;  
I(isolation)         고립성:  하나의 트랜잭션 수행시 다른 트랜잭션의 작업이 끼어들지 못하도록 보장하는 것이다.
                                         즉, 트랜잭션 끼리는 서로를 간섭할 수 없다 D(durability)      지속성:    DB에 영구저장 되어야 한다.

 

'spring' 카테고리의 다른 글

데이터 베이스 스키마 자동 설정  (0) 2023.04.17
Http 요청 확인  (0) 2023.03.29
ApplicationContext  (0) 2023.03.14
Presentation-Layer  (0) 2023.03.14

댓글