-
Cron Expression기록/Default 2024. 5. 3. 22:28
Cron 표현식은 작업(Job)을 특정 시간에 주기적으로 수행하도록 스케줄링할 때 사용됩니다. 저는 Spring Batch와 Quartz를 조합해서 사용하면서 Cron 표현식을 정리하게 되었습니다.
형식
[초] 분 시 일 월 요일 [년도]
[ ]: Optional
각 필드는 다음과 같은 값을 가집니다.
- 초: 0 ~ 59
- 분: 0 ~ 59
- 시: 0 ~ 23
- 일: 1 ~ 31
- 월: 1 ~ 12
- 요일: 일요일(0 또는 7 또는 SUN) ~ 토요일(6)
- 년도: 2024 처럼 특정 년도 지정
범위 지정
범위는 '-' 으로 지정합니다. 예를 들어 요일 필드에서, 월요일부터 수요일까지라면 MON-WED 또는 1-3과 같이 지정할 수 있습니다.
간격 지정
10초 마다 수행하는 것은 0/10 * * * * ?와 같이, 10분 마다 수행하는 것은 0/10 * * * 과 같이 지정할 수 있습니다.
모든 값 지정
'*'로 모든 값을 지정해줄 수 있습니다. 매 시간은 0 * * * *와 같이 지정할 수 있습니다.
?
일반적으로 일자 필드와 요일 필드 중 하나를 생략하여 충돌을 방지할때 사용. 일자에 상관없이 수요일 12:00 AM에 특정 작업을 수행하려면 0 0 ? * 3과 같이 지정할 수 있습니다.
예시
Q) 매주 월요일 3:00 AM에 통계를 내는 작업을 실행하기 위한 Cron 표현식은?
A) 0 3 ? * 1
Q) 매월 1일 2:30 AM에 통계를 내는 작업을 실행하기 위한 Cron 표현식은?
A) 30 2 1 * ?
아래의 링크에서 직접 Cron 표현식을 작성하며 확인해볼 수 있습니다.
'기록 > Default' 카테고리의 다른 글
맥 Eclipse IDE 단축키 (0) 2024.06.14 맥 IntelliJ IDE 단축키 (0) 2024.05.09 로컬 네트워크에서 다른 PC의 localhost에 접근하기 (0) 2024.03.14 [macOS] JDK 삭제하기 (0) 2023.06.09 깃허브 액세스 토큰 업데이트 (0) 2023.02.04