1. 분산락을 적용하게 된 상황 만약 여러 사용자가 동시에 같은 시간대이거나 겹치는 시간대에 예약 진행 시 어떻게 중복 예약을 막을 수 있을지 문제였다. 해당 예약 테이블은 아래와 같이 생성 되어있다. 하나의 회의 테이블은 이미 예약된 데이터와 시간이 겹치지 않아야만 예약이 가능하다. 동시에 100명의 사용자가 똑같은 (시간 + 장소)를 예약했을 때 8개의 중복 데이터가 발생하였다. 2. MySQL을 이용한 분산락을 구현한 이유 분산락을 구현하는 방법에 대해 검색해보면 Redis를 이용한 방법이 많이 보인다. 하지만 Redis를 이용하게 되면 추가적인 인프라 구축비용이나 유지보수 비용이 발생한다. 따라서, 나는 기존에 사용하고 있던 MySQL에서 제공하는 NAMED LOCK을 이용하여 Lock에 이름을 ..