스프링 프레임워크에서 지원하는 스케줄링 기능
@Scheduled
어노테이션을 사용하여 스케줄링을 구현할 수 있음
@Scheduled(cron = "0 0 0 0 0 0 0")
와 같이 선언일정한 시간간격 또는 지정된 시각에 개발자가 의도한 특정 로직을 외부의 입력없이 돌리기 위해 사용
Spring 에서는 Scheduler 와 Quartz 두가지 방식으로 제공하고 있음
스케줄러는 기본적으로 Thread 1개를 이용한 동기 방식으로 진행
→ 동기방식 스케줄링은 1번 스케줄이 끝날때까지 2번스케줄이 대기하는 방식
비동기로 진행하고 싶다면 @EnableAsync
어노테이션을 사용할 수 있음