트랜잭션과 잠금 트랜잭션 트랜잭션은 꼭 여러 개의 변경 작업을 수행하는 쿼리가 조합됐을 때만 의미 있는 개념은 아니다. 트랜잭션은 하나의 논리적인 작업 셋에 하나의 쿼리가 있든 두 개 이상의 쿼리가 있든 관계없이 논리적인 작업 셋 자체가 100% 적용되거나(COMMIT을 실행했을 때) 아무것도 적용되지 않아야(ROLLBACK 또는 트랜잭션을 ROLLBACK시키는 오류가 발생했을 때)함을 보장해 주는 것이다. MyISAM이나 MEMORY 스토리지 엔진처럼 부분 업데이트 현상이 발생하면 실패한 쿼리로 인해 남은 레코드를 다시 삭제하는 재처리 작업이 필요할 수 있다. 따라서 InnoDB 스토리지 엔진이 지원하는 트랜잭션 기능은 애플리케이션 개발에서 고민해야 할 문제를 줄여주는 아주 필수적인 DBMS의 기능이라..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bmzMmK/btswcIorg27/SbK6irEkgri65tsJkvglfk/img.png)
트랜잭션 트랜잭션은 하나 이상의 작업을 논리적인 작업 단위로 묶은 것으로, 이 작업들은 모두 성공적으로 완료되거나 실패할 수 있다. 데이터베이스 관리 시스템(DBMS)에서 특히 중요하며, 데이터베이스에서 데이터를 안전하게 조작하고 관리하기 위해 사용된다. 트랜잭션 ACID 트랜잭션의 주요 특징은 다음과 같다. 원자성(Atomicity): 트랜잭션 내에서 실행한 작업들은 마치 하나의 작업인 것처럼 모두 성공하거나 모두 실패해야 한다. 일관성(Consistency): 모든 트랜잭션은 일관성 있는 데이터베이스 상태를 유지해야 한다. 예를 들어, 데이터베이스에서 정한 무결성 제약 조건을 항상 만족해야 한다. 격리성(Isolation): 동시에 실행되는 트랜잭션들이 서로에게 영향을 미치지 않도록 격리한다. 예를 ..
- Total
- Today
- Yesterday
- Synchronized
- nginx
- socket
- 분산 락
- 구름톤 챌린지
- spring session
- 자바 네티
- postgresql
- jvm 메모리 구조
- 네티 스레딩 모델
- 구름톤챌린지
- mysql
- Kafka
- mdcfilter
- pessimistic lock
- spring webflux
- sql
- 카프카
- 람다
- annotation
- nginx configuration
- 넥스트스탭
- transaction
- Java
- NeXTSTEP
- redis session
- 비관적 락
- TDD
- 트랜잭션
- 스프링 네티
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |