[Spring Boot] 분산 락(Distributed Lock) 타임 아웃 시 트랜잭션 관리를 하고 계신가요? (+ `25.04.21 1차 오류 수정)
·
Backend/Spring Boot & JPA
💡 Kurly 기술 블로그의 분산 락 AOP를 적용하신 분들에게 해당되는 내용입니다.⚠️ (`25.04.21) Lock 소유권이 없는 Thread에서 Unlock을 할 수 있다는 내용은 잘못된 분석이었고 정정했습니다.1. Introduction 📌 Why Doesn't It Throw an Exception??최근에 겪은 일은 아니고, 2달 전에 발생했었던 일이고 상당히 치명적인 이슈로 취급했었다.다만 프로젝트가 런칭 실패로 공중 분해되면서 해당 이슈도 자연스럽게 처리할 필요가 없어졌는데, 그냥 개인적인 호기심이 들어서 종종 떠올리다가 생각보다 쉽게 해결할 수 있을 것 같아서 도전해봤다가 진짜 해결해버렸다. 당시에 어떤 문제가 있었는지 우선 설명을 하고, 그 다음 심층적으로 분석을 해볼 것이다. 우리..