[INTRO] 1. 배치 애플리케이션의 특성과 Spring Batch 기본 구조

y001·2026년 2월 2일

Spring Batch Guide

목록 보기
1/19
post-thumbnail

1. 웹 애플리케이션과 배치 애플리케이션의 차이

웹 애플리케이션과 배치 애플리케이션은 실행 방식과 처리 목적이 근본적으로 다르다.

웹 애플리케이션은 사용자의 요청을 트리거로 하여 즉시 실행되며, 응답 속도가 가장 중요한 가치이다. 요청 단위로 데이터를 처리하고, 오류가 발생하면 즉시 에러 응답을 반환하고 처리가 종료된다. 서버는 상시 실행 상태를 유지하며 사용자 요청을 대기한다.

반면 배치 애플리케이션은 사용자의 요청과 무관하게 정해진 스케줄에 따라 자동 실행된다. 대량의 데이터를 한 번에 처리하며, 처리 속도보다 정확성과 완결성이 우선된다. 오류 발생 시 즉시 종료하는 것이 아니라 재시도, 중단, 로그 기록, 알림, 재시작을 통해 복구 중심으로 동작한다. 작업이 필요한 시점에만 실행되고 종료된다.

2. Spring Batch의 기본 구성 요소

구성 요소역할설명
Job배치 작업 전체하나의 배치 실행 단위이며, 배치 애플리케이션의 최상위 개념이다
Step실행 단계Job을 구성하는 처리 단계이다. 하나의 Job은 여러 Step으로 구성될 수 있다
ItemReader데이터 입력처리 대상 데이터를 읽어오는 역할을 담당한다
ItemProcessor데이터 가공읽어온 데이터를 변환하거나 가공하는 역할을 담당한다
ItemWriter데이터 출력처리된 데이터를 저장소나 외부 시스템에 저장한다

이 구조는 배치 처리를 읽기(Read) → 가공(Process) → 쓰기(Write) 흐름으로 명확히 분리한다.

0개의 댓글