TIL

TIL 2024-10-02 레디스의 분산락과 DB 락

wonow_ 2024. 10. 2. 12:35

 

동시성 제어 방법들

분산락

RDB 가 아닌 Redis 에게 분산해서 락을 걸 수 있다.

 

DB 락

DB 락에는 여러 종류가 있지만 일반적으로 X-Lock을 걸어 락을 걸 수 있다.

 

각 구현 방법은 이 글에서 설명하지 않을 것이다.

 

DB 락을 걸면 되는데 왜 분산락을 사용하지?

분산락을 사용하는 이유는 다음과 같다.

 

  • DB 단에 부하가 안 걸린다.

다른 이유 (Sorted Set 등...)는 다 제쳐두고 이게 가장 크다.

 

DB 단에 부하가 생기면 각종 예상치 못한 오류가 발생할 수 있다.

 

추가로 모노DB 면 하나의 도메인에서 발생하는 트래픽이 다른 도메인 트래픽까지 영향이 갈 수 있다.

그러면 안 좋겠지?