
[Spring Data] Redis Lock을 적용해보자 - 1
·
Spring/동시성 & Lock
`백엔드/서버` 개발자라면 반드시 `동시성` 문제를 만나게 된다. 특히, 요즘 `K8s` 환경을 자주 사용하는데 아무리 애플리케이션에서 `동시성` 발생 대비를 해도다른 `Pod`에서 같은 `DB`에 접근하면 동시성 문제를 처리하는 것이 어렵다. 위의 그림과 같은 경우 `DB` 또는 `Redis`에서 제공하는 `Lock`을 활용하여 데이터의 동시성 접근을 제어해야 한다. `DataBase Lock`을 이용할 경우 추가적인 인프라 구성요소 없이 `동시성`을 해결할 수 있다는 장점이 있으나`Lock` 획득을 위해 `Waiting`되는 `DataBase Connection` 증가로 인해 부하가 발생할 수 있다. `Redis`를 이용하여 `Distributed Lock`을 사용할 경우 `DataBase Conn..