Thumbnail
얼리버드 할인 중
NEW 개발 · 프로그래밍 웹 개발
스프링 배치 - Spring Boot 기반으로 개발하는 Spring Batch
(5.0)
3개의 수강평 ∙ 178명의 수강생

30%

69,300원

99,000원
지식공유자 : 정수원
총 108개 수업˙총 45시간 12분
평생 무제한 수강
수료증 발급 강의
입문 초급 대상 중급이상
폴더에 추가 197 공유
초급자를 위해 준비한
[웹 개발, 프레임워크 및 라이브러리] 강의입니다.

초급에서 중~고급에 이르기까지 스프링 배치의 기본 개념부터 API 사용법과 내부 아키텍처 구조를 심도있게 다룹니다. 그리고 스프링 배치 각 기능의 흐름과 원리를 학습하게 되고 이를 바탕으로 다양한 배치 어플리케이션 개발을 위한 실무적 감각을 익히게 됩니다.

✍️
이런 걸
배워요!
스프링 배치 핵심 도메인 이해
스프링 배치 Job, Step, Flow 이해 및 API 활용
스프링 배치 Chunk 기반 프로세스 이해 및 활용
스프링 배치 예외 및 오류 제어
스프링 배치 멀티 스레드 프로세싱 이해 및 활용
스프링 배치 이벤트 리스너 다루기
스프링 배치 TDD 및 운영 API 활용
스프링 배치 실전 프로젝트

백엔드 배치 처리를 더 간편하고 효과적으로! 
스프링 배치의 세계를 경험해 보세요. 

스프링 배치 학습, 
어떻게 시작해야 할까요?

스프링 재단에서 진행하는 스프링 프로젝트는 다양합니다.
대표적으로 스프링 부트나 스프링 데이터, 스프링 클라우드 등이 있습니다.
그리고 이 프로젝트들과 관련된 자료나 레퍼런스가 많이 존재합니다.

그런데 스프링 배치는 그렇지 않습니다.

Spring Batch?

스프링 배치는 배치 어플리케이션을 개발하는 데 필요한 강력한 API를 제공하고 있습니다. 기본적으로 제공하는 API만을 사용해도 복잡한 배치 프로그램도 간단하게 구현할 수 있습니다.

스프링 배치는 스프링의 하위 프로젝트 중에서도 역사가 짧지 않고 버전이 계속 업그레이드 되면서 견고한 기술적 기반을 갖추고 있습니다. 설계 및 구현에 있어서도 확장성과 유연성이 높음에도 불구하고, 관련 자료나 레퍼런스가 다른 스프링 프로젝트들과 비교해서 턱없이 부족한 것이 현실입니다.

이에 그동안 스프링 배치를 사용해 온 경험을 바탕으로 스프링 배치의 기술을 습득하고자 하는 개발자들에게 지식을 공유하고자 강의를 기획, 제작하게 되었습니다.


스프링 배치의 
핵심을 알려드립니다.

본 강의는 스프링 배치의 기본적인 사용법을 전혀 모르는 사용자부터 기초적인 지식 및 사용 경험은 있지만 좀더 깊이있는 지식을 습득하고, 스프링 배치의 핵심적인 개념과 원리, 내부 구조, 동작 방식 등을 심도있게 이해하고 이를 응용하고자 하는 분들을 위한 강의입니다.


자바 개발자라면 
스프링 배치보다 
더 나은 선택은 없습니다.

자바를 사용하고 있는 개발자라면 배치 어플리케이션을 개발함에 있어 스프링 배치보다 더 나은 선택은 없다고 자부합니다. 스프링의 공통적인 기능을 다 사용할 수 있는 동시에 배치 어플리케이션 개발에 필요한 다양한 요소들을 제공해주고 있으며 간단한 설정과 구성으로도 복잡하고 견고한 어플리케이션을 만들 수 있기 때문입니다.

그러기 위해서는 스프링 배치의 기초와 기본을 확실하게 이해 및 정립하고 나서 어플리케이션 개발로 넘어가야 합니다. 단순히 API 사용법을 외우고 코딩해서는 스프링 배치의 방대한 기술적 장점을 극대화할 수 없습니다.

스프링 배치를 둘러싼 고민, 
이 강의로 OK.

  • “배치 어플리케이션을 만들 때 스프링 배치가 가장 좋은 선택인가요?”
  • “스프링 배치의 기본적인 사용법 및 구성하는 내용을 대략적으로 알고 있는데 이것으로도 배치 어플리케이션을 개발하는데 괜찮을까요?”
  • “다양한 배치 어플리케이션을 개발하는데 스프링 배치를 어느 정도 수준까지 알아야 하는가요?”

이 강의는 스프링 배치의 핵심적인 개념과 원리뿐 아니라 다양한 실습과 내부 흐름들을 심층적으로 분석함으로써 실무적으로 다양한 배치 어플리케션을 개발할 수 있는 역량을 기르는 데 목적을 두고 있습니다.


이런 분들께 
추천합니다.

스프링 배치
(Spring Batch)를 
처음 접하는 
입문자 

스프링 배치를 통해 
배치 어플리케이션 
(Batch Application)을 
만들고자 하는 분 

단순 API 사용을 넘어 
내부 구조와 동작원리 
등을 심층적으로 
알고자 하는 분 

스프링 배치의 
기능을 확장하여 
커스터마이징할 수준의 
역량을 갖추고 싶은 분 


이 강의의 특징 

  • 단순한 API 사용법과 문법만을 학습하지 않습니다.
  • 스프링 배치가 어떤 구조로 동작하는지 정확한 흐름들을 이해하고 원리를 파악하도록 합니다.
  • 스프링 배치가 제공하는 기본 기능을 확장하여 커스터마이징하는 역량을 기르도록 합니다.
  • 실전 예제를 통해 스프링 배치의 기술을 어떻게 실무적으로 활용할 수 있을지에 대한 감각을 익히게 됩니다.

학습 커리큘럼

1. 스프링 배치의 핵심 도메인 이해 및 활용

스프링 배치에서 Job을 구성하는데 있어서 사용되는 여러 도메인들이 있습니다. 예를 들어 Job, Step, Flow, Tasklet, JobInstance, Jobexecution, StepExecution, ExecutionContext 등.. 이러한 도메인들에 대한 개념부터 확실하게 이해를 해야 올바른 Job을 구성하고 활용할 수 있습니다. 각 도메인들의 용어적 개념과 도메인들간의 관계를 이해함으로써 간단한 Job부터 복잡한 Job까지 원하는 Job을 체계적으로 구성하는 방법을 익히게 됩니다.

2. 스프링 배치의 Job, Step, Flow 이해 및 API 활용

스프링 배치에서 Job을 구성하기 위한 기본적인 단위와 항목들에 대해서 학습합니다. Job, Step, Flow의 기본 개념과 구조를 이해하고 각 API 에 대한 설정과 활용방법에 대해 학습합니다. 그리고 Job과 Step의 여러 유형들에 대해 살펴보고 Job, Step, Flow를 조합하여 배치잡을 구성하는 방법을 학습함으로서 스프링 배치의 가장 기본이 되는 Job의 구성 및 활용을 자유자재로 구현할 수 있는 능력을 기르게 됩니다.

3. 스프링 배치의 청크 기반 프로세싱 정복

스프링 배치에서 가장 핵심적인 기능 중에 하나가 바로 청크 기반 프로세싱입니다. Chunk 개념을 도입하여 대용량의 데이터를 고성능으로 처리를 할 수 있도록 합니다. 여기에 사용되는 API가 ItemReader, ItemProcessor, ItemWriter 입니다. 청크 기반 프로세싱의 기본적인 개념과 원리를 학습하고 내부 아키텍처까지 파악합니다. 그리고 다양한 예제를 통해 청크 기반 프로세싱을 통한 데이터 처리의 활용법을 정복하게 됩니다.

4. 스프링 배치의 멀티 스레드 프로세싱 정복

대용량의 데이터 처리와 시간이 많이 소요되는 배치 처리는 단일 스레드가 아닌 멀티 스레드로 구성하여 동시에 병렬적인 배치 처리를 함으로써 더욱 효율적인 배치 처리가 이루어지도록 합니다. 자바의 스레드 모델에 대한 기본적인 개념과 스프링 배치에서 제공하는 멀티 스레드 관련된 기술들을 먼저 이해하고 여러 멀티 스레드 유형의 배치처리 기술들을 익히게 됩니다.

5. 스프링 배치의 오류 제어

배치 실행에 있어서 오류나 예외는 언제든지 발생할 가능성이 있습니다. 이러한 상황에서 오류로 인한 장애를 미리 예상하고 대비함으로써 배치 서비스가 완전히 중단되는 것이 아닌 일시적인 중단 혹은 예외를 무시하고 다음 단계로 가는 등의 처리를 함으로써 내결함성을 가진 배치 어플리케이션을 어떻게 구성할 수 있는지 학습하게 됩니다. 이와 관련된 기술인 Skip과 Retry 기능에 대한 자세한 내용과 실습을 진행합니다.

6. 실전! 스프링 배치 어플리케이션 예제

스프링 배치의 기술을 사용해서 실전에서 응용할 수 있는 배치 어플리케이션을 제작하는 시간을 가집니다. 스프링 배치 기반 위에서 멀티 스레드 구조로 API 서버와 통신하는 배치 어플리케이션을 구현하는 예제를 구현해 봄으로써 스프링 배치의 전반적인 내용을 이해함과 동시에 실무에서 스프링 배치를 어떻게 활용할 수 있는지에 대한 식견을 넓혀 주는 시간이 될 것입니다.


이 강의를 만든 
지식공유자를 소개합니다. 

정수원(leaven)

  • 현직 20년차 자바 개발자
  • SI/SM/솔루션/Mobile/Front&Back-end 의 다양한 프로젝트 경험
  • Architect/PM/PL 로서 역할 수행
  • Github

 

지식공유자가 알려주는
강의 수강 꿀팁!
🎓
이런 분들께
추천드려요!
스프링 배치의 기본적인 구조와 개념을 확실하게 이해하고 싶은 분
스프링 배치의 단순한 API 사용법을 넘어서 내부 처리 과정과 아키텍처를 이해하고 싶은 분
스프링 배치를 활용해 실무적 수준의 배치 어플리케이션을 개발하고자 하는 분
스프링 배치의 입문자부터 중고급자까지 활용할 수 있는 내용으로 구성
📚
선수 지식,
필요한가요?
Java
Spring Boot
JDBC, JPA
Lombok

안녕하세요
정수원 입니다.
정수원의 썸네일
커리큘럼 총 108 개 ˙ 45시간 12분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 1. 스프링 배치 소개
섹션 2. 스프링 배치 시작
섹션 3. 스프링 배치 도메인 이해
목차 소개 미리보기 03:14
Job 25:36
JobInstance 30:47
JobParameter 32:31
JobExecution 25:10
Step 31:08
StepExecution 25:47
StepContribution 16:48
ExecutionContext 43:17
JobRepository 30:24
JobLauncher 39:51
섹션 4. 스프링 배치 실행 - Job
목차 소개 미리보기 01:03
배치 초기화 설정 30:57
Job and Step 소개 미리보기 04:57
JobBuilderFactory 39:12
SimpleJob - 개념 및 API 소개 31:55
SimpleJob - start() / next() 10:12
SimpleJob - validator() 30:04
SimpleJob - preventRestart() 13:59
SimpleJob - incrementer() 17:06
SimpleJob 아키텍처 18:12
섹션 5. 스프링 배치 실행 - Step
StepBuilderFactory 23:23
TaskletStep - 개념 및 API 소개 35:47
TaskletStep - tasklet() 13:16
TaskletStep - startLimit() / allowStartIfComplete() 17:22
TaskletStep 아키텍처 19:11
JobStep 35:16
섹션 6. 스프링 배치 실행 - Flow
FlowJob - 개념 및 API 소개 33:28
FlowJob - start() / next() 12:50
Transition - 배치상태 유형 (BatchStatus / ExitStatus / FlowExecutionStatus) 34:29
Transition - on() / to() / stop(), fail(), end(), stopAndRestart() 46:05
사용자 정의 ExitStatus 25:36
JobExecutionDecider 26:53
FlowJob 아키텍처 18:22
SimpleFlow - 개념 및 API 소개 24:28
SimpleFlow 예제 16:15
SimpleFlow 아키텍처 48:37
FlowStep 13:44
@JobScope / @StepScope - 기본개념 및 설정 31:27
@JobScope / @StepScope 아키텍처 36:19
섹션 7. 스프링 배치 청크 프로세스 이해
목차 소개 미리보기 02:28
Chunk 29:32
ChunkOrientedTasklet - 개념 및 API 소개 41:11
ChunkOrientedTasklet - ChunkProvider / ChunkProcessor 44:40
ItemReader / ItemWriter / ItemProcessor 이해 44:12
ItemStream 38:19
Chunk Process 아키텍처 18:05
섹션 8. 스프링 배치 청크 프로세스 활용 - ItemReader
목차 소개 미리보기 02:23
FlatFileItemReader - 개념 및 API 소개 52:59
FlatFileItemReader - delimetedlinetokenizer 15:58
FlatFileItemReader - fixedlengthtokenizer 16:43
FlatFileItemReader - Exception Handling 09:56
XML StaxEventItemReader - 개념 및 API 소개 13:56
XML StaxEventItemReader -예제 15:17
JsonItemReader 08:39
DB - Cursor & Paging 이해 13:47
DB - JdbcCursorItemReader 30:37
DB - JpaCursorItemReader 18:46
DB - JdbcPagingItemReader 33:54
DB - JpaPagingItemReader 25:38
ItemReaderAdapter 12:32
섹션 9. 스프링 배치 청크 프로세스 활용 - ItemWriter
FlatFileItemWriter - 개념 및 API 소개 12:51
FlatFileItemWriter - delimeted 21:09
FlatFileItemWriter - format 06:20
XML StaxEventItemWriter 15:34
JsonFileItemWriter 05:57
DB - JdbcBatchItemWriter 19:12
DB - JpaItemWriter 15:31
ItemWriterAdapter 11:30
섹션 10. 스프링 배치 청크 프로세스 활용 - ItemProcessor
CompositeItemProcessor 13:43
ClassifierCompositeItemProcessor 25:47
섹션 11. 스프링 배치 반복 및 오류 제어
목차 소개 미리보기 02:32
Repeat 49:04
FaultTolerant 31:50
Skip 56:05
Retry (1) 57:02
Retry (2) 25:18
Retry (3) 35:57
Skip & Retry 아키텍처 14:56
섹션 12. 스프링 배치 멀티 스레드 프로세싱
기본 개념 미리보기 22:49
AsyncItemProcessor / AsyncItemWriter 48:59
Multi-threaded Step 53:28
Parallel Steps 42:33
Partitioning (1) 37:45
Partitioning (2) 51:21
SynchronizedItemStreamReader 17:40
섹션 13. 스프링 배치 이벤트 리스너
기본개념 10:33
JobExecutionListener / StepExecutionListener 23:00
ChunkListener / ItemReadListener /ItemProcessListener /ItemWriteListener 21:16
SkipListener & RetryListener 36:07
섹션 14. 스프링 배치 테스트 및 운영
Spring Batch Test 26:11
JobExplorer / JobRegistry / JobOperator 43:16
섹션 15. 실전! 스프링 배치 어플리케이션 개발
어플리케이션 예제 (1) 미리보기 07:24
어플리케이션 예제 (2) 27:16
어플리케이션 예제 (3) 30:28
어플리케이션 예제 (4) 59:04
어플리케이션 예제 (5) 20:20
어플리케이션 예제 (6) 27:23
어플리케이션 예제 (7) 24:47
섹션 16. 강좌 마무리
정리 13:16
강의 게시일 : 2021년 10월 08일 (마지막 업데이트일 : 2021년 09월 28일)
수강평 총 3개
수강생분들이 직접 작성하신 수강평입니다. 수강평을 작성 시 300잎이 적립됩니다.
5.0
3개의 수강평
5점
4점
3점
2점
1점
VIEW 좋아요 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
pandabear thumbnail
스프링 시큐리티 강의와 마찬가지로 디버그를 찍어 흐름을 보여주시는 부분이 정말 좋습니다 강의 시간이 정말 압권이네요 인프런 강의 중 제일 혜자 강의 같습니다 감사히 잘 듣겠습니다
2021-10-11
지식공유자정수원
네 소중한 평가 감사드립니다. 어떤 기술이든 기본적인 원리를 알게 되면 그만큼 응용은 쉬워지게 마련입니다. 끝까지 완주하셔서 좋을 결과 있으시길 바라겠습니다.^^
2021-10-12
한창훈 thumbnail
"이 시대 최고의 배치 강의"
2021-10-12
지식공유자정수원
소중한 평가 감사드립니다. 긴 강의시간이지만 끝까지 완주하셔서 스프링 배치의 큰 그림을 그릴 수 있는 개발자로 거듭나시길 응원드리겠습니다. 감사합니다^^
2021-10-12
김영동 thumbnail
스프링 시큐리티 강의도 수강하고 믿고 배치 강의도 구매하였는데 정말 너무 좋습니다. 배치관련 강의도 귀한데 스프링 배치 내부 구현까지 깊이 있게 설명해주셔서 이해하는데 많은 도움이 되었습니다. 단순히 이렇게하면 이런 결과가 나옵니다가 아니라 클래스 구성부터 흐름까지 모두 짚어주시고 마지막에 큰 아키텍쳐까지 그려주시니 강의를 얼마나 신경써서 준비하셨는지 한번에 알 수 있었어요. 회사 사수가 직접 옆에 붙어서 가르쳐준다 해도 이보다 자세하게 설명할 수 없어요... 이 강의는 정말 돈 더 받으셔야 합니다... 너무 좋아서 두서 없이 글을 썼는데 여러분들 이강의 꼭 사셔야 합니다
2021-10-12
지식공유자정수원
네 소중한 평가 정말 감사드립니다. 저에게는 큰 힘이 되는 평가이네요^^ 스프링 자체가 워낙 구조적으로 잘 된 설계 바탕 위에서 개발된 프레임워크이기 때문에 스프링 배치 역시 스프링의 철학을 따라가고 있습니다. 그래서 스프링 배치의 Fundamental 을 익히시는 동시에 스프링에 녹아든 객체지향 중심의 설계가 어떤 구조로 이루어졌는지도 관심을 갖고 파악하시다 보면 훨씬 더 많은 것들을 얻어실 수 있다고 봅니다. 강의 끝까지 열공 응원드립니다. 감사합니다^^
2021-10-12
얼리버드 할인 중

30%

69,300원

99,000원
폴더에 추가 197 공유
지식공유자 : 정수원
총 108개 수업˙총 45시간 12분
평생 무제한 수강
수료증 발급 강의
입문 초급 대상 중급이상
수강 전 궁금한 점이 있나요?
문의하기
문의
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의를
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스