※ 원티드 프리온보딩 2월 "MySQL 잘 사용하기" 학습내용 2일차 - 2
동시성 제어
동시성 제어가 안될 경우 발생할 수 있는 문제 예시
우선 한 플레이어의 골드가 옮기려는 1000 골드 이상인지 확인 후 1000 골드를 차감한다. 그 후 받을 플레이어의 골드를 1000 증가시킨 후 트랜잭션을 커밋한다. 만약 커밋이나 롤백을 하기 전에 다른 프로세스가 플레이어 1번의 골드를 조회하는 경우 차감 전의 원래 골드 값을 돌려받아 버그가 생기게 된다.
Unrepeatable Read Problem
Phantom Read Problem
Global Lock
Table Lock
Named Lock
Metadata Lock
Record Lock