
83
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
SSG 자동화센터 운영시스템에서 Redis 분산 락 사용 사례
이 게시물은 SSG의 ECMS 시스템에서 발생한 동시성 이슈를 해결하기 위해 Redis 기반 분산 락을 스프링 AOP와 결합하여 구현한 방법을 소개합니다.동시성 이슈 및 기존 문제점
- 기존 DB 테이블 기반 동시성 제어는 조회 시점 차이로 인한 무결성 제약조건 위반 문제 발생
- 비관적 락과 낙관적 락의 장단점 및 적용 어려움 설명
Redis 분산 락 도입 및 구현
- Redisson 라이브러리를 선정하여 효율적인 락 획득 및 해제 구현
- 스프링 AOP로 분산 락 로직을 모듈화하고 @DistributedLock 애노테이션으로 적용
- 락 획득 실패 시 예외 처리 및 재시도 로직 포함
@Transactional과의 결합 및 주의사항
- 분산 락과 DB 트랜잭션 AOP 적용 순서가 중요하며 @Order 애노테이션으로 Advisor 순서 지정 가능
- 트랜잭션과 락 해제 시점에 따른 동시성 문제 발생 가능성 및 해결 방안 제시
- 새로운 트랜잭션 시작 방식과 단일 DB 커넥션 사용 방식 비교