개발놀이터

스프링 배치 개요 본문

Spring/Spring Batch

스프링 배치 개요

마늘냄새폴폴 2022. 9. 18. 18:55

본 포스팅은 인프런의 정수원님의 스프링 배치 강의를 듣고 정리한 포스팅입니다. 더 자세한 내용은 강의를 참고해주세요. 

 

 

1. 스프링 배치 탄생 배경

  • 자바 기반 표준 배치 기술 부재
    • 배치 처리에서 요구하는 재사용 가능한 자바 기반 배치 아키텍처 표준의 필요성이 대두
  • 스프링 배치는 SprintSource(현재는 Pivotal)와 Accenture(경영 컨설팅 기업)의 합작품
    • Accenture - 배치 아키텍처를 구현하면서 쌓은 기술적인 경험과 노하우
    • SpringSource - 깊이 있는 기술적 기반과 스프링의 프로그래밍 모델
  • Accenture는 이전에 소유했던 배치 처리 아키텍처 프레임워크를 Spring Batch 프로젝트에 기증함

 

2. 배치 핵심 패턴

  • Read - 데이터베이스, 파일, 큐에서 다량의 데이터를 조회한다.
  • Process - 특정 방법으로 데이터를 가공한다.
  • Write - 데이터를 수정된 양식으로 다시 저장한다. 

 

3. 배치 시나리오

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

 

출처 : https://docs.spring.io/spring-batch/docs/4.3.x/reference/html/images/spring-batch-layuuers.png