| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 아이템 리더
- spring batch 5
- JSONArray 분할
- 스프링 배치 5
- Spring Batch
- step 값 공유
- executioncontext
- 마이바티스 트랜잭션
- job parameter
- 읽기 작업과 쓰기 작업 분리
- spring batch 변수 공유
- abstractpagingitemreader
- 아이템 리더 커스텀
- executioncontext 변수 공유
- stepexecutionlistener
- 아이템 리더 페이징 처리
- step 여러개
- 스프링배치 메타테이블
- 선언적 트랜잭션 관리
- 스프링 트랜잭션 관리
- 수직 스케일업
- 스프링배치 엑셀
- 트랜잭션 분리
- multi threading
- 스프링배치 csv
- aop proxy
- flatfileitemwriter
- mybatis
- Today
- Total
목록spring batch 5 (3)
ebson
Spring Batch 에서 Step 개발 Spring Batch를 사용한 Batch Application에서 대부분의 경우에는 단일 Step으로 요구사항을 충족할 수 있다. 그러나 비즈니스 로직을 분리하면서 모듈화하고 가독성을 향상하거나, 큰 작업을 작은 작업들로 나누면서 재사용성을 향상하려는 경우, 또는 필요에 따라 새로운 Step을 추가하고 제거, 순서 변경하는 등 유연성과 확장성을 가지려는 경우에 여러 Step으로 Job을 구성할 수 있다. 여러 Step으로 Job을 구성하고 개발하다보면 Step 사이에 변수를 공유해야 하는 경우가 생긴다. 다른 스텝에서의 계산 결과나 데이터베이스 쿼리 결과, API 호출 결과를 사용하거나, 앞선 스텝의 결과 값으로 조건 분기 처리하여 다음 스텝을 결정해야 하는 ..
Spring Batch Application에서 사용할 수 있는 데이터소스들 대부분의 경우 Spring Batch를 사용한 배치 어플리케이션에서는 데이터소스로 RDBMS를 연동해 사용하기 때문에, MyBatis와 JPA를 사용할 수 있으면 된다. 직접 MyBatis와 JPA를 사용하는 코드를 작성할 수도 있고 Spring Batch가 제공하는 전용 Item Reader 클래스와 Item Writer 클래스를 사용할 수도 있다. ex) MyBatisCursorItemReader, MyBatisPagingItemReader, MybatisBatchItemWirter, JpaPagingItemReader, JpaItemWriter ... 그러나 배치 어플리케이션의 읽기 데이터소스가 항상 MyBatis와 ..
Meta Data를 별도로 관리하려면 스프링 배치 프레임워크에서는 배치 애플리케이션 운영을 위해 필요한 기능들을 제공하면서 배치 잡의 실행 상태를 추적하고 실패시 복구 지점을 관리하거나 성능 최적화와 오류 로깅, 복잡한 작업 흐름을 관리하는 것 등을 돕는 메타 데이터 테이블들을 제공한다. 그래서 스프링 배치 프레임워크를 사용한 배치 애플리케이션을 장기적으로 고도화하기 위해 이들 메타 데이터들을 별도로 관리는 것이 필요할 수 있다. [그림 1] Spring Batch 5 Meta Data Table DDL .sql files [그림 2] Spring Batch 5 Meta Data Table ERD 만약 애플리케이션에서 실행하는 모든 잡들이 데이터베이스의 데이터를 조회하거나 수정하지 않는다면 스프링 ..