spring scheduler
-
[Spring] Scheduler Lock(SchedLock) - Multiple Scheduler Instance 방지Spring 2023. 2. 22. 08:46
Scheduler를 사용하려고 할때, 서버가 Scailing 되는 환경이라면 Multiple Scheduler Instances가 발생하기 때문에 고민을 해봐야 한다. 그리고 이를 해결하기 위한 방법은 2가지 정도로 살펴볼 수 있다. 첫 번째로는, Quartz와 같은 분산 스케줄링 프레임워크를 사용하여 여러 인스턴스에서 스케줄러 실행을 조정할 수 있다. 이렇게 하면 새 인스턴스가 환경에서 추가되거나 제거되더라도 한 번에 하나의 스케줄러 인스턴스만 실행되도록 할 수 있다. 두 번째로는, 한 번에 하나의 스케줄러 인스턴스만 실행되도록 할 수 있다. 스케줄러의 각 인스턴스가 예약된 작업을 실행하기 전에 공유 리소스에 대한 잠금을 획득하도록 함으로써 이를 수행할 수 있다. 스케줄러의 다른 인스턴스가 잠금을 이미..
-
[Spring] Spring에서 Scheduler 처리하기Spring 2022. 10. 26. 09:08
일정한 시간간격 또는 일정한 시각에 특정 로직을 돌리기 위해서 사용하는 것을 'Scheduler' 라고 한다. Spring에선 'Spring Scheduler' 라이브러리를 제공한다. 💡 Spring Scheduler Spring Scheduler는 Spring Boot starter에 기본적인 의존성이 제공되기 때문에 별도의 추가적인 의존성이 필요하지 않다. 사용하기 위해서 Application Class에 @EnableScheduling 어노테이션 선언 Application.class @EnableScheduling @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplica..