1.1 Quartz란?
Quartz는 Terracotta 라는 회사에 의해 개발된 Job Scheduling 라이브러리입니다. 완전히 자바로 개발되어 어느 자바 프로그램에서도 쉽게 통합해서 개발할 수 있습니다. Quartz는 수십에서 수천 개의 작업도 실행 가능하며 간단한 interval 형식이나 Cron 표현식으로 복잡한 스케줄링도 지원합니다. 예를 들면 매주 금요일 새벽 1시 30분에 매주 실행하는 작업이나 매월 마지막 날에 실행하는 작업도 지정할 수 있습니다.
1.2 장단점
스프링을 개발하면서 Quartz를 Job Scheduler로 자주 사용하는 이유도 있지만, 단점도 존재합니다.
장점
- DB 기반으로 스케줄러 간의 Clustering 기능을 제공한다
- In-memory Job Scheduler도 제공한다
- 여러 기본 Plug-in을 제공한다
단점
- Clustering 기능을 제공하지만, 단순한 random 방식이라서 완벽한 Cluster 간의 로드 분산은 안된다
- 어드민 UI을 제공하지 않는다
- 스케줄링 실행에 대한 History는 보관하지 않는다
- Fixed Delay 타입을 보장하지 않으므로 추가 작업이 필요하다
출처 : https://advenoh.tistory.com/51
쿼츠를 잘 모르시는 분들도 위에 링크들어가시면 설명 잘해주셔서 도움 될겁니다.
728x90
반응형
'Back-end > JAVA & Spring' 카테고리의 다른 글
[Java] java.io.FileInputStream 주요 메소드 (0) | 2021.05.26 |
---|---|
[Java] File.separator로 OS 상관없이 파일 경로 구분하기 (0) | 2021.05.26 |
Spring + Quartz 주기적으로 작업 실행하기 (0) | 2021.05.24 |
[JAVA] Quartz job Scheduler 기본 사용법 정리 (0) | 2021.05.24 |
[RSA] RSA MODULUS, EXPONENT (1) | 2021.05.20 |
댓글