mybatis (1) 썸네일형 리스트형 [ spring ] 스케줄러 중복 실행 이슈 및 해결 💡 배경프로젝트를 진행하면서 스케쥴러를 통해 정해진 시간에 주기적으로 REST API 데이터와 DB 데이터의 정합성을 맞춰야 하는 작업이 필요했다. 이 때 여러 대의 서버 인스턴스에서 동일한 서버 애플리케이션이 구동되고 있다면, (ex.톰캣 이중화) 스케쥴러가 여러 서버에서 동시에 실행되었을 때 중복작업 이슈가 발생할 수 있다는 것을 알았다. 그래서 스케쥴러 작업이 하나의 서버에서만 수행되도록 해주었다. ✅ 방법1. Spring Batch + Quartz + JDBC 2. Redis 또는 DB 기반 분산락 3. 외부 잡 매니저 (e.g., Airflow, Jenkins, AWS EventBridge) 이 중 내가 선택한 방식은 2번의 DB 기반 분산락 방식이었다. | DB 분산락이란?락 전용 테이블을 .. 이전 1 다음