스프링 배치

바퀴달린 개발자·2022년 8월 24일
1

배치 시나리오

  • 배치 프로세스를 주기적으로 커밋
  • 동시 다발적인 JOB의 배치 처리, 대용량 병렬 처리
  • 실패 후 수동 또는 스케줄링에 의한 재시작
  • 의존관계가 있는 STEP 여러 개를 순차적으로 처리
  • 조건적 FLOW 구성을 통한 체계적이고 유연한 배치 모델 구성
  • 반복, 재시도, SKIP 처리

프로젝트 구성 및 의존성 설정

스프링 배칯 활성화

  • @EnableBatchProcessing
    - 스프링 배치가 작동하기 위해 선언해야 하는 어노테이션
    • 스프링 부트 배치의 자동 설정 클래스가 실행됨으로 빈으로 등록된 모든 job을 검색해서 초기화와 동시에 job을 수행하도록 구성됨

스프링 배치 초기화 설정 클래스

  1. BatchAutoConfiguration
  • 스프링 배치가 초기화 될 때 자동으로 실행되는 설정 클래스
  • job을 수행하는 JobLauncherApplicationRunner 빈을 생성
  1. SimpleBatchConfiguration
  • JobBuilderFactory와 StepBuilderFactory 생성
  • 스프링 배치의 주요 구성 요소 생성 - 프록시 객체로 생성됨..
  1. BatchConfigurerConfiguration
    1) BasicBatchConfigurer
  • SimpleBatchConfiguration에서 생성한 프록시 객체의 실제 대상 객체를 생성하는 설정 클래스
  • 빈으로 의존성 주입 받아서 주요 객체들을 참조해서 사용할 수 있다.
    2) JpaBatchConfigurer
  • JPA 관련 객체들을 생성하는 설정 클래스

0개의 댓글