본문 바로가기
728x90

🍃SpringFrameworks/SpringBatch2

[SpringBatch] Batch Architecture. 배치 아키텍처 💡 Spring Batch의 구조 JobRepositor. 다양한 배치 수행과 관련된 수치 데이터와 잡의 상태를 유지 및 관리한다. 일반적으로 관계형 데이터베이스를 사용하며 스프링 배치 내의 대부분의 주요 컴포넌트가 공유한다. 실행된 Step, 현재 상태, 읽은 아이템 및 처리된 아이템 수 등이 모두 JobRepository에 저장된다. Job Job은 배치 처리 과정을 하나의 단위로 만들어 표현한 객체이고 여러 Step 인스턴스를 포함하는 컨테이너이다. Job이 실행될 때 스프링 배치의 많은 컴포넌트는 탄력성(resiliency)을 제공하기 위해 서로 상호작용을 한다. JobLauncher Job을 실행하는 역할을 담당한다. Job.execute을 호출하는 역할이다. Job의 재실행 가능 여부 검증, .. 2023. 9. 10.
[SpringBatch] 스프링 배치란? 💡 스프링 배치(Spring Batch)란? Spring Batch는 엔터프라이즈 시스템의 운영에 있어 대용량 일괄처리의 편의를 위해 설계된 가볍고 포괄적인 배치 프레임워크이다. Spring의 특성을 그대로 가져왔기 때문에 DI, AOP, 서비스 추상화 등 Spring 프레임워크의 3대 요소를 모두 사용할 수 있다. 사용 이유 대용량의 비즈니스 데이터를 복잡한 작업으로 처리해야하는 경우 특정한 시점에 스케쥴러를 통해 자동화된 작업이 필요한 경우 (ex. 푸시알림, 월 별 리포트) 대용량 데이터의 포맷을 변경, 유효성 검사 등의 작업을 트랜잭션 안에서 처리 후 기록해야하는 경우 Spring Batch는 로깅/추적, 트랜잭션 관리, 작업 처리 통계, 작업 재시작, 건너뛰기, 리소스 관리 등 대용량 레코드 처.. 2023. 9. 10.
728x90