Redisson1 트러블슈팅 : 목표에 오늘의 DONE 기록시 중복요청 분산락으로 방지하기 (2/2) https://thiswooin.tistory.com/147 트러블슈팅 : 목표에 오늘의 DONE기록시 동시성 문제로 인한 중복 생성 (1/2)문제상황동시에 done 테이블에 접근하여 오늘 생성된 데이터가 있는지 조회각 요청 모두 조회된 데이터가 없다고 판단하루에 하나만 존재해야하는 데이터가 두개가 동시에 생성됨한마디로, 우thiswooin.tistory.com지난 시간 연관관계가 포함된 객체를 비관적락으로 중복조회를 한 뒤 하나씩 쓰기 시도를 하려다가,FK를 포함한 객체에 비관적 락을 걸었을 때 인덱스 페이지 전체에 레코드락이 걸려 데드락이 걸리는 현상이 발생하였다. 처리중인 요청을 AOP를 통해 set에 담아 체크하는 방식의 시도, 그리고 Redis를 활용하여 분산락 구현을 통한 중복요청 방지를 구현.. 2024. 8. 5. 이전 1 다음