[CS] 낙관적 락, 비관적 락
·
CS
낙관적 락과 비관적 락의 개념적 차이 위주로 서술한 글입니다. 락(Lock)의 필요성여러 사용자나 프로세스가 동시에 동일한 수정하려고 하는 상황에서, 데이터가 충돌하거나 일관성이 깨질 수 있습니다. 이것을 방지하기 위해 락을 사용합니다. 락이란 데이터베이스에서 여러 트랜잭션이 동시에 동일한 데이터를 변경할 때, 충돌을 방지하고 데이터 무결성을 유지하기 위해 하나의 트랜잭션만이 데이터를 변경할 수 있도록 하는 매커니즘입니다. 이 락은 비관적 락과 낙관적 락으로 나뉘게 됩니다. 비관적 락(Pessiimistic Lock)비관적 락은 데이터의 충돌이 자주 발생할 것으로 가정하고, 트랜잭션이 데이터를 읽거나 수정할 때 즉시 락을 걸어 다른 트랜잭션이 해당 데이터에 접근하지 못하게 하는 방식입니다. 즉, 데이..