데이터베이스에서 락이란?

데이터베이스의 일관성과 무결성을 유지하기 위해 트랜잭션의 순차적 진행을 보장하기 위한 역할

Lock의 필요성

동시에 접근하여 수정하려고 할 때 데이터베이스의 일관성이 깨질 수 있다.

DBA가 있는데, Lock까지 개발자가 알아야 할 까? 쓸 일이 있긴 할까?

개발하다 보면 분명 아래와 같은 기능을 제작하게 될 수도 있고, 동시성과 관련된 문제를 분명 마주할 것이다.

Optimistic Lock (낙관적 락)

기본적으로 데이터 갱신시 충돌이 발생하지 않을 것이라고 생각하고 개발하는 방식이다.