[CS/데이터처리] 스프링 배치 - 14부

황제연·2025년 9월 2일
0

CS학습

목록 보기
186/193
post-thumbnail

JobLauncher

배치 Job을 실행시키는 역할을 합니다
Job과 Job Parameters를 인자로 받으며 요청된 배치작업을 수행한 후 최종 client에게 JobExecution을 반환합니다

스프링 부트 배치가 구동되면 JobLauncher 빈이 자동 생성됩니다

실행

  • JobLauncher.run(Job, JobParameters)
    스프링 부트 배치에서는 JobLauncherApplicationRunner가 자동적으로 JobLauncher를 실행시킵니다

동기적 실행

taskExecutor를 SyncTaskExecutor로 설정할 경우, JobExecution을 획득하고 배치 처리를 최종 완료한 이후, client에게 JobExecution을 반환합니다
스케줄러에 의한 배치처리에 적합하며, 배치처리 시간이 길어도 상관없는 경우 사용합니다

ExitStatus.FINSHED or FAILED를 반환하며, 최종 완료 후 응답값을 반환합니다

비동기적 실행

taskExecutor가 SimpleAsyncTaskExecutor로 설정한 경우이며,
JobExecution을 획득한 후 Client에게 바로 JobExecution을 반환하고 배치처리를 완료합니다
Http 요청에 의한 배치처리에 적합하며 배치처리 시간이 길 경우, 응답이 늦어지지 않도록 합니다

ExitStatus.UNKNOWN을 반환하며 즉시 응답값을 반환합니다

참고

  • 스프링 배치 - 정수원 인프런 강의
profile
Software Developer

0개의 댓글