11. 스트림 처리
·
Book/데이터 중심 애플리케이션 설계
보호되어 있는 글입니다.
10장. 일괄 처리(Batch Processing)
·
Book/데이터 중심 애플리케이션 설계
보호되어 있는 글입니다.
Part3. 파생 데이터 (Derived Data)
·
Book/데이터 중심 애플리케이션 설계
보호되어 있는 글입니다.
9장. 일관성과 합의 (Consistency and Consensus)
·
Book/데이터 중심 애플리케이션 설계
보호되어 있는 글입니다.
8장. 분산 시스템의 골칫거리(The Trouble with Distributed Systems)
·
Book/데이터 중심 애플리케이션 설계
보호되어 있는 글입니다.
Common Batch Patterns
·
Book/Spring Batch docs
일부 배치 작업은 Spring Batch에서 제공하는 기성(ready-made) 컴포넌트만으로도 구성할 수 있다.예를 들어, ItemReader와 ItemWriter 구현체들은 매우 다양한 시나리오를 커버할 수 있다.하지만 실무에서는 완벽히 일치하지 않는 요구사항이 많기 때문에, 일부 구간(특히 쓰기/처리)은 직접 구현해야 할 수도 있다.이 장에서는 커스텀 비즈니스 로직에서 자주 사용되는 몇 가지 공통 패턴의 예시를 제공한다.이러한 예시들은 주로 Listener 인터페이스를 활용한 것들이다. 또한, 필요하다면 ItemReader나 ItemWriter도 Listener 인터페이스를 직접 구현해야 할 수도 있다. ❐ 1. Logging Item Processing and Failures🧩 Step 내에..
Retry
·
Book/Spring Batch docs
❐ RetryRetryBatch 처리에서 일시적인 오류(transient error) 때문에 전체 작업이 실패하는 걸 방지하기 위해, 자동 재시도(retry) 메커니즘을 제공한다.예를 들어 이런 경우에 유용하다.네트워크 일시 장애로 API 호출 실패DB Deadlock 발생 (DeadlockLoserDataAccessException)외부 시스템 응답 지연실패 시 바로 중단하지 않고 일정 횟수까지 재시도 하는 방식으로 안정성을 높인다. Retry 기능의 분리Spring Batch 2.2.0 이후, Retry 기능은 별도의 라이브러리로 분리됐다.예전엔 RepeatTemplate 내부에서 Retry 로직을 직접 포함했지만지금은 Spring Retry가 RetryTemplate, BackOff, Po..
Scaling and Parallel Processing
·
Book/Spring Batch docs
❐ 1. Multi-thread Step앞에서 봄 ❐ 2. Parallel Steps앞에서 봄 ❐ 3. Remote ChunkRemote Chunk란?Reader/Processor와 Writer를 서로 다른 프로세스(노드)로 분리해서 실행하는 구조마스터 노드: 데이터를 읽고 나누어(Chunk 단위로) 전송워커 노드: 전달받은 Chunk를 실제로 Write (DB 저장 등) 언제 효과적일까?Manager 컴포넌트는 하나의 프로세스로 동작하고, worker는 여러 개의 원격 프로세스로 동작함이 패턴은 Manager가 병목(bottleneck)이 되지 않을 때 가장 효율적따라서, 아이템을 읽는 작업보다 처리 작업이 더 비싼 경우에 특히 효과적 ManagerManager는 Spring Batch의..