Development/Database
[lock]MySQL user-level lock vs Redisson
메정
2021. 11. 23. 17:41
MySQL user-level
장점
1.redisson을 이용할 때보다 MySQL user-level의 분산락을 이용하는게 빌드 속도가 더 빠름
2.추가 DB에 대한 비용 발생 X
3.선언적 트랜잭션 사용 가능(@Transcational)
단점
1.별도로 스레드를 생성해서 락을 걸어줘야 하는 단점
- 1개의 스레드(요청) - 1개의 lock이 걸리도록 동작해야 하므로
Redisson
장점
1.구현이 편리
2.가독성 좋은 코드
단점
1.빌드 시 지연 발생(MySQL user-level의 분산락이 더 빠름)
2.추가 DB이므로 비용 발생.
- 캐싱 등 redis의 기능을 적극 활용한다면 비용이 아깝지 않겠지만, 분산락만 이용한다면 아깝지 않을까...
3.선언적 트랜잭션 사용 불가 - TranscationManager를 이용해서 별도의 트랜잭션 작업 처리 해줘야 함