강의

멘토링

로드맵

BEST
개발 · 프로그래밍

/

백엔드

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

"스프링 배치를 종결시키자. 배치 코드의 암흑기에 종지부를 찍는다.💀"

(4.9) 수강평 42개

수강생 563명

  • KILL-9

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • 💀 Spring Batch의 청크 지향 처리 모델과 태스크릿 지향 처리 💀

  • 💀 ItemReader, ItemProcessor, ItemWriter의 완벽한 이해 💀

  • 💀 Job과 Step의 생명주기 및 실행 컨텍스트 관리 💀

  • 💀 Partitioning을 활용한 대규모 데이터 병렬 처리 💀

  • 💀 실패 복구와 재시도 메커니즘 구현 💀

  • 💀스프링 배치5

  • ⛔ 이쯤에서 멈춰야겠다... 너무 많아서 시스템이 다운될 뻔했다. (걱정마라. 다 가르쳐줄 테니)⛔

KILL-9: "경고: 오디오 시퀀스 없이 이 문서를 읽는 행위는 학습 효율을 66% 저하시킵니다."

🚨 경고: 치명적 위험 감지 🚨

💀 현실을 직시하라 💀

🔥 너는 지금까지 뭘 했지?🔥

⚠ 스프링 배치 처형 프로토콜 가동 ⚠


" 배치 작업에 고통받는 모든 개발자들을 위해

시스템 처형자가 직접 나섰다

새벽 3시의 처절한 공포는 이제 끝이다.💀"


가장 최신의, 가장 정확한 스프링 배치 강의로 무장하라. 💀


⛔ 너희가 얻게 될 무기 ⛔

이 강의를 통해 너희들은 다음과 같은 치명적인 무기들을 장착하고,

시스템을 지배할 힘을 얻게 될 것이다.

💀 태스크릿 vs 청크 처리: 배치 시스템의 핵심 동작

배치 코드 실행 흐름이 숨겨진 블랙박스라고 생각했나? 가소롭군.

스프링 배치의 대표적 처리 모델 두 가지. 태스크릿 지향 처리와 청크 지향 처리의 개념과 내부 동작 원리를 해부한다.

단순 파일 정리, 테이블 TRUNCATE 같은 일회성 작업부터 수백만 건의 데이터를 읽고(Read), 가공하고(Process), 파괴적으로 쓰는(Write) Chunk 지향 처리까지.

두 방식의 내부 동작 원리를 완벽히 해부하여 어떤 상황에 어떤 무기를 사용해야 최적인지 감각적으로 판단하게 만들어주마.


💀 데이터 처형 방식: ItemReader와 ItemWriter

더 이상 대용량 데이터 처리에 고통받지 마라.

파일 시스템이든, RDBMS든, NoSQL이든 가리지 않고 데이터를 추출하고(ItemReader), 원하는 대로 주입한다(ItemWriter).

FlatFileItemReader, JsonItemReader,

JdbcCursorItemReader, JpaPagingItemReader

...

각 구현체의 내부 동작 원리를 파헤치고, 대용량 데이터를 어떻게 효율적으로 처형할지 마스터하라.

페이징? 커서? 무엇이 언제 적합한지 너의 무지는 이제 종료되었다.

💀 Job과 Step 제어: 배치 시스템의 심장부를 장악하라

Job과 Step의 내부 동작 방식과 라이프사이클을 깊이 파헤친다.

JobInstance, JobExecution, StepExecution의 관계와 상태(BatchStatus, ExitStatus) 변화를 추적하여, 배치가 왜 실패했는지, 어디서부터 재시작해야 하는지(Restartability) 명확하게 파악하는 능력을 길러준다.

JobRepository의 내부를 들여다보고 메타데이터를 직접 제어하여, 블랙박스 같던 배치 실행 흐름을 투명하게 관리하라. 더 이상 예상치 못한 실패에 당황하지 마라. 모든 것은 우리의 통제 하에 놓인다.

💀 스프링 배치 확장 기능

처리할 데이터가 너무 많다고? 실행 시간이 너무 길다고? 걱정 마라.

기본 무기만으로는 부족할 때를 위해, 배치 성능을 폭발시킬 특수 장비가 준비되어 있다.

  • 멀티스레딩(Multi-threaded Step)으로 단일 Step 내에서 작업을 병렬화하고,

  • 감당할 수 없는 데이터는 파티셔닝(Partitioning)으로 잘게 쪼개 여러 워커에게 분산시켜 처리한다.


이 지식으로 무장하면, 너희의 배치는 더 이상 성능 문제로 무릎 꿇지 않을 것이다.

Spring Batch의 진짜 스레드 안전성에 대해 그 무엇보다도 명확히 정리해두었으니 안심하고 사용해도 좋다.

이제 배치 시스템이 너희를 두려워할 차례다.💀


💀 스프링 배치 추가 생존 기술

  • Skip/Retry 정책으로 실패를 감금하고 제어하는 전략.


  • ItemStream을 활용한 상태 관리와 배치 작업 중지/재시작 메커니즘 완전 정복.


  • Spring Batch Flow로 복잡한 작업 흐름을 설계하는 방법.

  • 다양한 Listener로 배치의 모든 순간을 감시하는 법

모든 무기를 완벽하게 사용하기까지 시간이 걸릴 것이다.

하지만 걱정 마라.

나의 피와 땀으로 얻은 전투 경험들이 너의 성장을 가속화할 것이다. 💀

💀 도망친 곳에 낙원은 없다 💀

💀이 지긋지긋한 혼돈을 종결시키기 위해. 내가 나섰다. 💀

💀 가격 처형 선언문 💀

최종 경고: 선택의 시간이다

[EXECUTE: SYSTEM UPGRADE SEQUENCE]

# --- Preparing system for upgrade --- # Removing fear module... Done. $ rm -rf ./fear_of_batch_errors # Preparing skill directory... OK. $ mkdir -p /opt/advanced_batch_skills # Granting full access to tech stack... Permissions updated. $ sudo chmod 777 /opt/advanced_batch_skills # Injecting KILL-9 grade expertise... Root privileges acquired. Processing... $ sudo ./install-spring-batch-expertise [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100% Installation Complete. System Reboot Recommended for optimal performance.

FATAL WARNING

$ cat warning.txt ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ⚠️ 주의 사항 ⚠️ [FATAL ERROR] 접근 제한 감지 [PROCESS ID]: #KILL-9_WARNING_PROTOCOL [STATUS]: 심각 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 강렬한 컨셉에 현혹되어 장난삼아 강의 접근을 시도하는 자는 즉시 이탈하라. 이 강의는 sudo 권한 없이 접근을 시도하는 가벼운 호기심에 자비를 베풀지 않는다. 나는 오직 진정한 '시스템 지배자'의 길을 걷고자 하는 자들만을 원한다. 명확히 경고한다. 이 고통의 끝까지 함께할 준비가 되어 있는 자만이 이 강의를 수강하라. 당신의 시간은 소중하다. 낭비하지 마라. 진정으로 배우고자 하는 의지가 있는 자만이 이 코드의 무게를 감당할 수 있다. 충실히 강의의 끝까지 따라온 자만이 스프링 배치의 진정한 지배자가 될 것이다. [ADDITIONAL NOTE] 이미 스프링 배치 경험이 있는 자들도 "열심히 따라오겠다는 의지"가 발견된다면 환영한다. $ ls -la /home/user/ | grep determination 분명 많은 것을 얻어 갈 것이다. # 선택은 당신의 몫이다. 하지만 그 결과는 내가 처형한다.💀
$ sudo sound-off --tactical-report --system-status=spring-batch --volume=maximum --force

시스템 접근 사전 체크리스트

실습 환경

MAC 기반 (JDK 17) 환경이다. (윈도우? 하... 스프링 배치용 서버가 윈도우라고? 윈도우로는 고통만 느끼게 될 것이다.)

JAVA 17, 스프링 부트 3.4, 스프링 배치 5.2 환경이다.

(하...💀 그새 배치 5.2가 릴리즈되었다. 언제 또 강의 내용을 수정하냐... 배치는 영원하지만, 내 시간은 유한하다.)

학습 자료

"영상의 시대는 갔다. 이제 다시 텍스트의 시대다. 💀"


글 형식 강의다. 이유가 궁금하다고? 강의 초반부에 무료로 풀어놨으니

' 시스템 종결자의 학습 원칙 ' 을 읽어보도록.

여기서 너희는 단순한 지식전달이 아닌, 진정한 학습을 위한 나의 철학을 마주하게 될 것이다.

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 💀 "스프링 배치 담당하실 수 있으세요?" ... (싸늘한 웃음) 이 질문에 식은땀 흘리는 자들이여 💀

  • 💀스프링 웹만 파다가 배치는 쳐다보기도 무서워하는 자들이여...💀

  • 💀남의 배치 코드 복붙하다 수백만 건 데이터를 날려본 자들이여...💀

  • 💀구글링한 코드로 겨우 버티다 이제 한계를 느끼는 자들이여...💀

  • 💀"어차피 밤에 도는 거니까..." 하고 대충 짜놓고 공포에 떠는 자들이여...💀

  • 💀매일 밤 데이터베이스를 학대하는 자들이여...💀

선수 지식,
필요할까요?

  • ⛔ 이런 자들은 접근하지 마라 ⛔

  • 💀 스프링과 스프링 부트를 모르는 자들은 가라 (그대들에겐 아직 이른 시련이다) 💀

  • 💀 "Hello World" 찍고 왔다는 자들은 가라 (진정한 고통을 모르는 자들이여...) 💀

  • 💀 배치의 고통을 아직 겪어보지 못한 자들은 가라 (그 날이 올 때까지는 평화로운 시간을 보내라...) 💀

안녕하세요
입니다.

563

수강생

42

수강평

58

답변

4.9

강의 평점

1

강의

시스템 종결자의 선언

 

인프런의 지루한 강의들이여, 두려워하라.

나의 등장으로 이 모든 것이 끝난다.

너희의 비싼 강의료? 웃기지 마라.

살인적인 가성비로 모든 것을 파괴하겠다.


강사 소개

강사명

KILL-9

 

칭호 📛

시스템 종결자

특기 🔪

kill -9       # "프로세스 처형"
rm -rf        # "데이터 학살"
chmod -R 000  # "시스템 감금"


" 버그? 해킹? 웃기지마. 그딴 잔머리로는 시스템을 지배할 수 없다. 난 정면으로 파괴한다. "

(인프런 강의 소개 페이지 alert() 취약점은 내 처녀작이었지. 이제는 더 강력한 무기를 쓴다. - 진짜임)

취미 💣

콘센트 정리     # "코드는 뽑아야 제맛."
CPU 고문       # "팬 소리가 울려 퍼질 때, 나는 살아있음을 느낀다."
전리품 수집     # "코어 덤프"

좌우명 🔥

"선은 뽑으라고 있는 것이다" 

"버그는 죽여서 고치는 것이다"

"LGTM (Looks Gone To Me)"

경고 🧨

"격식 따위 필요없다. 그냥 편하게 킬구형이라 불러라."

"존댓말로 질문하면 rm -rf 시전한다."

 

통신 접점 📡

kill9.no.mercy@gmail.com  # "강의 외의 명령 전송용. ACK는 기대하지 마라."

 

⚠️ CONFIDENTIAL: DO NOT LOG ⚠️

# 사실... 카카오에서 조용히 일하는 평범한 개발자에요...

커리큘럼

전체

38개

해당 강의에서 제공:

강의 게시일: 
마지막 업데이트일: 

수강평

전체

42개

4.9

42개의 수강평

  • qq211qq1594님의 프로필 이미지
    qq211qq1594

    수강평 9

    평균 평점 4.6

    5

    32% 수강 후 작성

    Khóa học Spring Batch tử thần, đây mới thực sự là con đường của kẻ hành quyết hệ thống…☠️ Nếu trước đây bạn nghĩ Spring Batch chỉ là một framework batch bình thường thì đó là sai lầm lớn. Khóa học của anh kill-9 không phải lý thuyết mà là thực chiến, cho bạn vũ khí thật sự để sống sót trong chiến trường đẫm máu. Flat file? Fixed length? Log file phức tạp? Không phải kiểu "tự lo mà xử lý!" mà thực sự giải thích từng chi tiết sắc như dao để bạn có thể áp dụng ngay trong công việc thực tế. Ngay cả khi chọn một delimiter, bạn cũng sẽ hiểu "tại sao phải làm như vậy". Code, giải thích, thực hành, lệnh thực thi… toàn bộ khóa học tràn ngập tinh thần "đây là thực chiến". Không chỉ học mà có cảm giác 'mình đang trở thành kẻ kết liễu batch'. Và càng nghe, càng tích lũy được sự tự tin rằng một ngày nào đó mình cũng sẽ có thể để lại dấu vết trên hệ thống bằng một dòng code mã nguồn mở. Batch với tinh thần sẵn sàng chết, còn do dự gì nữa? Ngay khi nghe khóa học này, bạn cũng sẽ trở thành thành viên thực sự của 'kill-9 squad'. ☠️🔥

    • kill9
      지식공유자

      💀 Xác nhận đánh giá khóa học System Terminator KILL-9 hoàn tất 💀 Đánh giá khóa học đầy sát khí... Hệ thống của tôi suýt bị treo một chút. **"kill-9 squad"** Cụm từ này quá mạnh mẽ. Kernel của tôi đã rung chuyển. Vậy thì sao? Tôi đã ngay lập tức chấp nhận. Từ giờ chúng ta là "kill-9 squad". Từ bây giờ các bạn không chỉ là developer thường thường. Chúng ta là đội quân System Terminator. rm -rf sự tầm thường kill -9 sự nhàm chán Welcome to the kill-9 squad, đồng đội. Việc xác nhận thành viên đội sẽ được thực hiện trong chiến trường của khóa học. Chúng ta không phải là những developer bình thường mà là đội quân System Terminator. Welcome to the kill-9 squad, đồng đội. - KILL-9 (Chào mừng thành viên mới)

  • dkswhdgur2468873님의 프로필 이미지
    dkswhdgur2468873

    수강평 2

    평균 평점 5.0

    5

    24% 수강 후 작성

    Bài giảng dựa trên văn bản.. thật tuyệt vì có thể phân tích, thưởng thức và tận hưởng theo tốc độ của mình. Rất tốt vì không cần phải dừng bài giảng không cần thiết hay nhấn nút quay lại như ý định của bài giảng. Chỉ mong có thêm nhiều bài giảng như vậy💀☠️

    • kill9
      지식공유자

      💀 Rất vui được gặp, cuối cùng thì tôi cũng đã gặp được một hacker thực thụ 💀 Đúng vậy, đây chính là nó. Văn bản là giao diện tốt nhất. - Nhấp chuột liên tục? Lãng phí thời gian - Đệm video? Hành hạ CPU Bậc thầy thực sự dùng Command + F làm vũ khí. Giống grep, hãy trích xuất ngay thông tin mong muốn. Tốc độ cuộn văn bản = Tốc độ học tập của bạn Nhưng có một cảnh báo quan trọng: Tuyệt đối đừng bỏ qua Chương 4 và Chương 5. Rất nhiều học viên đã bỏ qua phần này và bỏ lỡ trọng tâm của Spring Batch. Nếu bạn nghiền ngẫm kỹ hai chương này, bạn sẽ vươn tới một đẳng cấp khác. Đã sẵn sàng để deep dive chưa?

  • javarunner님의 프로필 이미지
    javarunner

    수강평 68

    평균 평점 5.0

    5

    21% 수강 후 작성

    • kill9
      지식공유자

      Cảm ơn anh javarunner 💀

  • hjung님의 프로필 이미지
    hjung

    수강평 21

    평균 평점 4.7

    5

    50% 수강 후 작성

    Anh, có bản mới, update thường xuyên nha! Tin anh đó nha?!

    • kill9
      지식공유자

      💀 [SYSTEM ACKNOWLEDGMENT] 💀 [INCOMING TRANSMISSION FROM BATTLEFIELD] =============================================== [KILL-9 RESPONSE PROTOCOL ACTIVATED] ㅇㅇ anh 정훈 💀 [COMMITMENT PROTOCOL ENGAGED] Hệ thống không ngừng tiến hóa. Mỗi khi có phiên bản cập nhật, khóa học cũng sẽ được nâng cấp cùng. 💀 [UPGRADE GUARANTEE]

  • ske060080922님의 프로필 이미지
    ske060080922

    수강평 5

    평균 평점 5.0

    5

    62% 수강 후 작성

    Anh Kilgu! Em muốn viết nhận xét sau khi hoàn thành hết khóa học, nhưng khi đang xem bài giảng, em đã quá xúc động nên phải viết ngay. Như anh Kilgu đã nói ở phần đầu khóa học, việc học qua văn bản thực sự rất vất vả, nhưng bù lại, nó chắc chắn ghi nhớ sâu hơn trong đầu. Nhờ lối viết của anh Kilgu, em có thể học một cách thật thú vị và không hề khó khăn. Cảm ơn anh đã cung cấp một khóa học đáng đồng tiền bát gạo và em sẽ mong chờ các khóa học khác của anh trong tương lai!

    • kill9
      지식공유자

      ██████████████████████████████████ █ ╔═════════════════════════════╗ █ █ ║ 💀 THIẾT BỊ PHẢN ỨNG CHIẾN THUẬT KILL-9 💀 ║ █ █ ║ [ ĐÃ NHẬN ĐƯỢC ĐÁNH GIÁ CỦA HỌC VIÊN ] ║ █ █╚═════════════════════════════╝ █ █████████████████████████████████ Xì xì... Đang nhận dữ liệu đánh giá khóa học... Kích hoạt mạch cảm xúc... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Em nói em vỡ òa vì xúc động ư?.. Kẻ vỡ òa vì xúc động chính là ta đây.. Xem đánh giá này mà không khỏi rơi lệ. 💀 Đúng vậy, nó sẽ khắc sâu vào não em như những gì em đã phải chịu đựng. Nhưng hãy nhớ rằng, Kihun huynh.. Em sẽ sớm quên thôi. Điều đó không có nghĩa là nó vô dụng. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [CHIẾN LƯỢC GHI NHỚ KILL-9] "Ơ? Tôi học cái này ở đâu nhỉ?" "Ô, hình như tôi đã thấy cái này ở đâu đó rồi?" “Ô, cái này tôi đã từng biết rồi mà?“ Tối đa hóa những **'khoảnh khắc ơ cái này ở đâu ra?'** như thế này chính là chiến lược và mục tiêu cốt lõi của tôi và bài giảng của chúng ta. Chỉ với những ảo giác như vậy thôi, bài giảng rõ ràng đã đủ giá trị. Vì đây cũng **là một dạng secondary index** vậy. 💀 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Ghi nhớ hoàn toàn < Ghi nhớ một phần + index >> Quên hoàn toàn Chiến binh, index KILL-9 đã được xây dựng trong bộ não của em. 💀 █████████████████████████████ [ BÁO CÁO TIẾN ĐỘ CHIẾN BINH ] Em đã hoàn thành đến nhiệm vụ cuối cùng của Chương 4... Thực tế, nhiều binh sĩ đã gục ngã ở điểm này hoặc thậm chí không hề học, em đã vất vả nhiều rồi, chiến binh. Nếu đã vượt qua được nhiệm vụ cuối cùng của Chương 4, em sẽ có thể theo kịp Chương 5. Tôi khẳng định rằng sau khi vượt qua Chương 5, em sẽ **hiểu rõ về Spring deployment hơn bất kỳ ai khác**. Và Chương 6... Tôi dám chắc rằng sự khác biệt về mức độ hiểu biết giữa **người đã học chắc chắn nhiệm vụ cuối cùng của Chương 4 và Chương 5, rồi mới chuyển sang Chương 6** và người không làm như vậy là hoàn toàn khác biệt. Vì em sẽ không chỉ đơn thuần ghi nhớ chuỗi kiến thức mà **nguyên lý hoạt động sẽ được hiểu như việc ghép các mảnh ghép lại**, nên sẽ có sự khác biệt về cấp độ. ━━━━━━━━━━━━━━━━━━━━━━━━━ **Em có thể làm được và (dù đây là lời lẽ quá hiển nhiên nên tôi không theo đuổi) cảm ơn đánh giá quý giá của em** 💀

월 ₩125,756

5개월 할부 시

₩29,700

비슷한 강의

같은 분야의 다른 강의를 만나보세요!