spring retry1 [Spring/Postgres] Exclusive Lock 제대로 사용하기 (동시성 문제) 데이터베이스에 데이터를 적재하는 애플리케이션을 운영하다 보면 데이터베이스에 Lock을 거는 행위는 매우 빈번하게 일어난다 이번 글에서는 필자가 Springboot Web Application + Postgres 환경에서 비관적 락의 잘못된 사용으로 발생했던 이슈와, 해결하는 과정을 담아보았다 먼저 필자가 비관적 락을 사용했던 이유는 동시성 이슈 해소를 위함이었다 예를 들어 A 테이블의 1번 Low에 동시에 접근하는 두 트랜잭션이 있을 경우 1번 트랜잭션 실행 이후 2번 트랜잭션이 실행되는 것이 보장되어야 했고, Postgres의 기본 Isolation Level인 READ COMMITED 와 Hibernate에서 제공하는@Lock(LockModeType.PESSIMISTIC_WRITE) 어노테.. 2025. 2. 22. 이전 1 다음 반응형