Spring boot/Spring batch3 Spring batch에서의 Step, Tasklet, Chunk Step은 Job을 구성하는 하나의 단계로서, 실제 배치 처리를 정의하고 컨트롤하는 데 필요한 정보를 가지고 있는 객체이다. Job은 Steps라는 리스트 변수를 통해 여러 개의 Step을 담고, 각각의 Step들을 execute하여 실행시킨다. 또한 Step은 내부적으로 Tasklet이라는 속성을 가지고 있어 수행 중에 자신의 tasklet들을 execute한다. Tasklet은 ItemReader, ItemProcessor, ItemWriter와 같은 chunk 기반의 클래스들을 포함하고 있다. Chunk 여러 개의 아이템을 묶은 하나의 덩어리, 블록을 의미한다. 한번에 하나씩 아이템을 입력 받아 Chunk 단위로 트랜잭션(commit, rollback)을 처리한다. Item 하나를 읽고 또다른 It.. 2023. 3. 21. Spring batch에서의 Job Job이란 배치 계층 구조에서 가장 상위에 있는 개념으로, 하나의 배치 작업 그 자체를 의미한다. Job Configuration을 통해 생성되는 객체 단위 반드시 한 개 이상의 Step으로 구성된다. 배치는 큰 틀에서 Job 설정 → Step 설정 → 설정한 Job을 JobLauncher가 실행 → Job 구동 → Job이 각각의 Step을 실행 → Step이 Step 안에 정의한 Tasklet을 실행의 순서로 실행된다. Job의 종류 1) SimpleJob 순차적으로 Step을 실행시키는 Job을 말한다. 보편적인 Job을 만들 때 사용된다. 2) FlowJob 특정한 조건과 흐름에 따라 Step을 구성하여 실행시키는 Job을 말한다. Flow 객체를 실행시켜 작업을 진행한다. JobInstance .. 2023. 3. 21. Spring batch의 기본 구성 스프링 배치란? 배치 프로세싱은 일괄처리라는 뜻을 가지고 있으며, 일괄처리의 의미는 일련의 작업을 정해진 로직으로 수행하는 것입니다. 스프링 배치는 로깅/추적, 트랜잭션 관리, 작업 처리 통계, 작업 재시작, 건너뛰기, 리소스 관리 등 대용량 레코드 처리에 필수적인 기능을 제공합니다. 스프링 배치가 필요한 상황 대용량의 비지니스 데이터를 복잡한 작업으로 처리해야하는 경우 특정한 시점에 스케줄러를 통해 자동화된 작업이 필요한 경우 의존 관계에 있는 step 여러 개를 순차적으로 처리해야하는 경우 스프링 배치의 핵심 패턴 Read (DB, 파일, 큐에서 다량의 데이터 조회) Process (데이터 가공) Write (데이터를 수정 된 양식으로 다시 저장) 스프링 배치의 아키텍처 1. Application S.. 2023. 3. 21. 이전 1 다음