spring boot schedLock
-
[Spring] Scheduler Lock(SchedLock) - Multiple Scheduler Instance 방지Spring 2023. 2. 22. 08:46
Scheduler를 사용하려고 할때, 서버가 Scailing 되는 환경이라면 Multiple Scheduler Instances가 발생하기 때문에 고민을 해봐야 한다. 그리고 이를 해결하기 위한 방법은 2가지 정도로 살펴볼 수 있다. 첫 번째로는, Quartz와 같은 분산 스케줄링 프레임워크를 사용하여 여러 인스턴스에서 스케줄러 실행을 조정할 수 있다. 이렇게 하면 새 인스턴스가 환경에서 추가되거나 제거되더라도 한 번에 하나의 스케줄러 인스턴스만 실행되도록 할 수 있다. 두 번째로는, 한 번에 하나의 스케줄러 인스턴스만 실행되도록 할 수 있다. 스케줄러의 각 인스턴스가 예약된 작업을 실행하기 전에 공유 리소스에 대한 잠금을 획득하도록 함으로써 이를 수행할 수 있다. 스케줄러의 다른 인스턴스가 잠금을 이미..