일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- step 값 공유
- 스프링 트랜잭션 관리
- api 아이템 리더
- abstractpagingitemreader
- 스프링 배치 5
- 스프링배치 엑셀
- flatfileitemwriter
- stepexecutionlistener
- 스프링 배치 파티셔닝
- spring batch 변수 공유
- mybatis
- JSONArray 분할
- 마이바티스 트랜잭션
- 스프링배치 csv
- 스프링배치 메타테이블
- job parameter
- spring batch 5
- Spring Batch
- step 여러개
- 아이템 리더 페이징 처리
- 트랜잭션 분리
- executioncontext 변수 공유
- 수직 스케일업
- 아이템 리더 커스텀
- 읽기 작업과 쓰기 작업 분리
- step 사이 변수 공유
- executioncontext
- aop proxy
- 선언적 트랜잭션 관리
- multi threading
- Today
- Total
목록Spring Batch (3)
ebson

org.springframework.batch.core.partition.support.Partitioner를 implements한 구현체를 작성하여 다양한 데이터 소스로부터 목적에 맞는 전용 파티셔너를 사용할 수 있습니다. 파티션 대상이 되는 데이터소스와 파티션 시 정렬 기준 및 보다 정밀한 제어가 필요한 파티셔닝 전략을 직접 구현할 수 있습니다. CASE1. 외부 API 호출1. 실무 사례 출고 송장과 출고 상품목록 등록 병렬처리 배치잡 2. 적요 HTTP Client를 사용해 API 호출한 결과 items를 파티셔닝할 수 있다.2.1. API 호출 결과 수집 2.2. API 호출 결과 items 카운팅 2.2.1. 카운팅 결과 items가 없으면 dummy 파티션을 생성2.2.2. 카운팅 결과 ..
Spring Batch 에서 Step 개발 Spring Batch를 사용한 Batch Application에서 대부분의 경우에는 단일 Step으로 요구사항을 충족할 수 있다. 그러나 비즈니스 로직을 분리하면서 모듈화하고 가독성을 향상하거나, 큰 작업을 작은 작업들로 나누면서 재사용성을 향상하려는 경우, 또는 필요에 따라 새로운 Step을 추가하고 제거, 순서 변경하는 등 유연성과 확장성을 가지려는 경우에 여러 Step으로 Job을 구성할 수 있다. 여러 Step으로 Job을 구성하고 개발하다보면 Step 사이에 변수를 공유해야 하는 경우가 생긴다. 다른 스텝에서의 계산 결과나 데이터베이스 쿼리 결과, API 호출 결과를 사용하거나, 앞선 스텝의 결과 값으로 조건 분기 처리하여 다음 스텝을 결정해야 하는 ..

Meta Data를 별도로 관리하려면 스프링 배치 프레임워크에서는 배치 애플리케이션 운영을 위해 필요한 기능들을 제공하면서 배치 잡의 실행 상태를 추적하고 실패시 복구 지점을 관리하거나 성능 최적화와 오류 로깅, 복잡한 작업 흐름을 관리하는 것 등을 돕는 메타 데이터 테이블들을 제공한다. 그래서 스프링 배치 프레임워크를 사용한 배치 애플리케이션을 장기적으로 고도화하기 위해 이들 메타 데이터들을 별도로 관리는 것이 필요할 수 있다. [그림 1] Spring Batch 5 Meta Data Table DDL .sql files [그림 2] Spring Batch 5 Meta Data Table ERD 만약 애플리케이션에서 실행하는 모든 잡들이 데이터베이스의 데이터를 조회하거나 수정하지 않는다면 스프링 ..