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 | 31 |
Tags
- kubernetes
- 코틀린
- MSA
- decorator 패턴
- 쿠버네티스
- 익명클래스
- MySQL
- 마이크로서비스
- nGrinder
- 자바
- 머신러닝
- CRD
- ansible
- ingress
- Stress test
- Kotlin
- Adapter 패턴
- java
- cloud native java
- spring microservice
- 헬름
- Spring
- Semaphore
- 동기화
- Algorithm
- Microservice
- 클라우드 네이티브 자바
- devops
- 클라우드 네이티브
- cloud native
Archives
- Today
- Total
목록FOR SHARE (1)
카샤의 만개시기
MySQL에서 동시성 문제를 해결하기 위한 Lock
InnoDB에서 잠금은 두가지로 나눌 수 있다. FOR SHARE (LOCK IN SHARE MODE) FOR UPDATE FOR SHARE (LOCK IN SHARE MODE) 트랜잭션이 끝날 때까지 SELECT를 한 Row 값이 변경되지 않는 것을 보장한다. 해당 Row를 수정하려는 쿼리는 잠김 상태가 되어 트랜잭션이 끝날 때까지 대기하게 되고, 조회 쿼리는 여러 세션이 동시에 수행하는 것이 가능하다. 이는 트랜잭션이 끝나기 전까지만 유효하므로 auto_commit을 꺼야 한다. SELECT name FROM user WHERE id = 1 LOCK IN SHARE MODE; # 5.7 SELECT name FROM user WHERE id = 1 FOR SHARE; # 8.0 # 8.0 버전에서는 ..
Database/mySQL
2019. 7. 9. 01:29