반응형
스프링 배치 완벽 가이드 내용 정리입니다
http://www.yes24.com/Product/Goods/99422216
1. 배치와 스프링
- 배치 처리의 중요성
- 필요한 모든 정보를 원하는 즉시 받아볼 수는 없다
- 배치가 처리되기 전까지 유예기간을 둘 수 있다
- 자원을 효율적으로 사용 가능
- 해당 책은 Spring Batch 프레임워크를 활용하는 기술을 다룬다
- 자바로 배치 처리를 하는 이유
- 유지보수성
- 배치 처리 코드는 일반적으로 다른 어플리케이션 코드보다 수명이 길다( 사용자에게 드러나는 코드가 아니기 때문에 )
- 스프링의 유용함을 같이 가져갈 수 있다 ( 스프링 배치 )
- 유연성
- 어느 플랫폼에서도 동작이 가능하다 ( 자바의 이식성 )
- 당연히 활발한 커뮤니티의 지원을 받을 수 있다 ( 자바의 가장 큰 장점이 아닐까... )
- 유지보수성
- SpringBatch 활용 사례
- ETL( extract -> transform -> load )
- 데이터 마이그레이션
- 병렬 처리 ( 아파치 스파크, 얀, 등등 )
2. 스프링 배치 프레임워크
- 스프링 배치 기능
- 데이터 유효성 검증
- 출력 포멧팅
- 복잡한 비즈니스 규칙을 재사용 가능한 방식으로 구현한 기능
- 대규모 데이터셋 처리
- 스프링 배치에는 스케줄러 기능은 없다!!!!!
- 구성
- 어플리케이션 레이어
- 가장 바깥쪽에 구성된 레이어
- 배치 처리 구축에 사용되는 모든 사용자 코드 및 구성
- 나머지 코어 레이어와 인프라스트럭처 레이어를 감싸고 있다
- 코어 레이어
- 배치 도메인을 정의하는 모든 부분이 포함된다
- 컴포넌트 요소로는 Job, Step 인터페이스와 Job 실행에 사용되는 인터페이스(JobLauncher, JobParameters 등)이 있다
- 인프라스트럭쳐 레이어
- 실제 File, DB등과 읽고 쓸수 있는 I/O를 담당하는 레이어
- 어플리케이션 레이어
- 용어 정리
- Job
- 중단이나 상호작용 없이 처음부터 끝까지 실행되는 처리
- 여러 개의 스텝이 모여 하나의 Job을 구성한다
- Step
- 관련된 입력, 출력이 존재
- 하나의 스텝은 실패했을 때 반복 실행할 수도 있고 못할 수도 있다
- Job
728x90
반응형
'Study > 스프링배치 완벽 가이드' 카테고리의 다른 글
Day 6. ExecutionContext (0) | 2021.12.26 |
---|---|
Day 5. 잡 리스너 이해하기 (0) | 2021.11.26 |
Day 4. 잡 파라미터 이해하기 (0) | 2021.11.25 |
Day 3. 잡과 스텝 이해하기 (0) | 2021.11.06 |
Day 2. 스프링 배치 (0) | 2021.11.05 |