Spring Batch 간단 정리
약 4분 소요
서론
예전에 이 글을 썼을 때는 “Spring Batch가 뭔 지 간단히 정리해두자” 정도의 느낌으로만 적었습니다.
지금은 배치를 실제 프로덕션에서 몇 년 동안 운영해보면서, 단순 개념 정리만으로는 부족하다는 생각이 많이 듭니다.
이번 글에서는 Spring Batch를 처음 접하는 분을 기준으로,
- Spring Batch가 무엇인지
- 언제 쓰는 게 맞는지
Tasklet과Chunk방식의 차이- 실무에서 반드시 신경 써야 하는 포인트
를 한 번에 정리해보려고 합니다.
Spring Batch란 무엇인가?
Spring Batch는 대량의 데이터를 안정적으로 일괄 처리하기 위한 프레임워크입니다.
- 대량 데이터 처리에 필요한 공통 기능을 제공
- 로그/모니터링
- 트랜잭션 관리
- 재시작, 재시도, 스킵 처리
- 실행 이력/통계 저장
- 개발자는 비즈니스 로직(
Reader/Processor/Writer)에만 집중할 수 있도록 도와주는 레이어라고 보면 됩니다.