본문 바로가기

spring

(3)
스프링 배치 실습(2) Tasklet를 사용한 간단한 배치이다. Job →Step→Tasklet 형태로 배치를 설계하였다. Tasklet은 계속 진행할지, 끝낼지 두가지 경우만 제공한다. Chunk 와 같이 Reader, Processor, Writer 세 로직을 나눠 제공하는 형태가 아니라, 1회성 처리 로직 또는 Reader, Processor, Writer를 한 로직에 모아놓은 방식의 비즈니스 로직을 구현할 때 사용한다. RepeatStauts.CONTINUABLE 처리를 계속할 수 있음 Spring Batch에게 해당 Tasklet을 다시 실행하도록 정의 RepeatStauts.FINISHED 처리가 완료되었음 처리의 성공 여부에 관계없이 Tasklet의 처리를 완료하고 다음 처리를 진행 Job, Step 구현 @Con..
스프링 배치 실습(1) SpringBatch5를 사용한 스프링배치 실습이다. (스프링배치5 참고) https://docs.spring.io/spring-batch/reference/ https://github.com/spring-projects/spring-batch/wiki/Spring-Batch-5.0-Migration-Guide 실습에 사용하는 테이블 구조는 다음과 같다. 사용자, 패키지(수업), 패스(이용권), 예약으로 구성되어 있다. 첫 번째 배치는 ItemReader, ItemProcessor, ItemWriter를 사용하여 이용권(pass)의 상태(status)가 진행 중이며, 종료일시가 현재 시점보다 과거일 경우 이용권을 만료로 바꾸는 작업이다. @Configuration public class ExpirePas..
스프링 배치(Spring Batch)란? Batch란? 배치 작업은 데이터를 실시간으로 처리하는 게 아니라, 일괄적으로 모아서 처리하는 작업을 의미한다. 특정 시간 이후에는 자원을 거의 소비하지 않고, 사용자에게 빠른 응답이 필요하지 않은 서비스에 적용할 수 있다. 예약 시간에 광고성 메시지 발송, 결제 정산 작업, 운영을 위해 필요한 통계 데이터 구축, 대량 데이터를 필요로 하는 모델 학습 작업 등에 Batch를 적용할 수 있다. Batch의 특징 대량의 데이터를 처리한다. 특정 시간에 프로그램을 실행한다. 일괄적으로 처리한다. Spring Batch 란 대량의 데이터를 처리하는 작업을 자동화하여 시스템의 부하를 줄이고 효율적인 데이터 처리를 가능하게 하는 프레임워크를 의미한다. Spring의 특성을 그대로 가져왔기 때문에 DI, AOP, 추..