강의

멘토링

커뮤니티

BEST
Programming

/

Back-end

Spring Batch của cái chết: Nỗi kinh hoàng thảm khốc lúc 3 giờ sáng giờ đã kết thúc.

Kết thúc Spring Batch. Chấm dứt kỷ nguyên đen tối của mã batch.💀

(4.9) 57 đánh giá

649 học viên

  • KILL-9
스프링
텍스트 강의
Java
Spring
Spring Boot
Spring Batch
backend

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • 💀 Mô hình xử lý hướng Chunk và xử lý hướng Tasklet của Spring Batch 💀

  • 💀 Nắm vững ItemReader, ItemProcessor, ItemWriter 💀

  • 💀 Quản lý vòng đời và ngữ cảnh thực thi của Job và Step 💀

  • 💀 Xử lý song song dữ liệu quy mô lớn bằng Partitioning 💀

  • 💀 Triển khai cơ chế khôi phục lỗi và thử lại 💀

  • 💀 Spring Batch 5

  • ⛔ Tôi phải dừng ở đây thôi... vì quá nhiều nên hệ thống suýt nữa đã sập. (Đừng lo. Tôi sẽ dạy bạn tất cả.)⛔

KILL-9: "Cảnh báo: Việc đọc tài liệu này mà không có chuỗi âm thanh sẽ làm giảm 66% hiệu quả học tập."

🚨 Cảnh báo: Phát hiện nguy hiểm chết người 🚨

💀 Hãy đối mặt với thực tế 💀

🔥 Bạn đã làm gì cho đến giờ vậy?🔥

⚠ Khởi động giao thức xử lý Spring Batch ⚠


" Dành cho tất cả các nhà phát triển đang gặp khó khăn với công việc batch

Người hành quyết hệ thống đã trực tiếp xuất hiện

Nỗi kinh hoàng tuyệt vọng lúc 3 giờ sáng giờ đã kết thúc.💀"


Trang bị bản thân với khóa học Spring Batch mới nhất và chính xác nhất.💀


⛔ Vũ khí mà các bạn sẽ có được ⛔

Thông qua khóa học này, các bạn sẽ được trang bị những vũ khí chết người như sau,

Bạn sẽ có được sức mạnh để thống trị hệ thống.

💀 Tasklet vs Chunk Processing: Hoạt động cốt lõi của hệ thống batch

Bạn nghĩ rằng luồng thực thi mã batch là một hộp đen ẩn giấu sao? Thật buồn cười.

Hai mô hình xử lý đại diện của Spring Batch. Phân tích khái niệm và nguyên lý hoạt động bên trong của xử lý hướng Tasklet và xử lý hướng Chunk.

Từ các công việc một lần như sắp xếp file đơn giản, TRUNCATE bảng cho đến xử lý hướng Chunk đọc (Read), xử lý (Process) và ghi (Write) một cách phá hủy hàng triệu bản ghi dữ liệu.

Tôi sẽ mổ xẻ hoàn toàn nguyên lý hoạt động bên trong của hai phương pháp này để giúp bạn có thể cảm nhận và phán đoán một cách trực quan xem nên sử dụng vũ khí nào trong tình huống nào để đạt hiệu quả tối ưu.


💀 Phương thức xử lý dữ liệu: ItemReader và ItemWriter

Đừng còn đau khổ với việc xử lý dữ liệu lớn nữa.

Không phân biệt hệ thống tệp, RDBMS hay NoSQL, đều có thể trích xuất dữ liệu (ItemReader) và chèn theo ý muốn (ItemWriter).

FlatFileItemReader, JsonItemReader,

JdbcCursorItemReader, JpaPagingItemReader

...

Khám phá nguyên lý hoạt động bên trong của từng implementation và làm chủ cách xử lý dữ liệu lớn một cách hiệu quả.

Phân trang? Con trỏ? Cái gì phù hợp khi nào - sự thiếu hiểu biết của bạn giờ đã kết thúc.

💀 Điều khiển Job và Step: Nắm quyền kiểm soát trung tâm của hệ thống batch

Khám phá sâu cơ chế hoạt động nội bộ và vòng đời của Job và Step.

Theo dõi mối quan hệ và sự thay đổi trạng thái (BatchStatus, ExitStatus) của JobInstance, JobExecution, StepExecution để phát triển khả năng xác định rõ ràng tại sao batch thất bại và cần khởi động lại từ đâu (Restartability).

Hãy nhìn vào bên trong JobRepository và kiểm soát trực tiếp metadata để quản lý minh bạch luồng thực thi batch vốn như hộp đen. Đừng còn hoảng sợ trước những thất bại không lường trước được nữa. Mọi thứ đều nằm dưới sự kiểm soát của chúng ta.

💀 Tính năng mở rộng Spring Batch

Dữ liệu cần xử lý quá nhiều? Thời gian thực thi quá dài? Đừng lo lắng.

Khi vũ khí cơ bản không đủ, đã chuẩn bị sẵn trang bị đặc biệt để bùng nổ hiệu suất triển khai.

  • Đa luồng (Multi-threaded Step) để song song hóa công việc trong một Step đơn lẻ,

  • Dữ liệu không thể xử lý được sẽ được chia nhỏ thông qua phân vùng (Partitioning) và phân tán cho nhiều worker để xử lý.


Được trang bị kiến thức này, việc triển khai của các bạn sẽ không còn phải quỳ gối trước các vấn đề về hiệu suất nữa.

Tính an toàn luồng thực sự của Spring Batch đã được tôi tổng hợp rõ ràng hơn bất cứ điều gì khác, vì vậy bạn có thể yên tâm sử dụng.

Giờ đây đến lượt hệ thống batch phải sợ hãi các bạn.💀


💀 Kỹ thuật sinh tồn bổ sung cho Spring Batch

  • Chiến lược kiểm soát và quản lý lỗi bằng chính sách Skip/Retry.


  • ItemStream을 활용한 quản lý trạng thái và cơ chế dừng/khởi động lại công việc batch hoàn toàn chinh phục.


  • Cách thiết kế luồng công việc phức tạp với Spring Batch Flow.

  • Cách giám sát mọi khoảnh khắc của batch bằng các Listener đa dạng

Sẽ mất thời gian để sử dụng hoàn hảo tất cả các loại vũ khí.

Nhưng đừng lo lắng.

Những kinh nghiệm chiến đấu mà tôi đã đổi bằng máu và mồ hôi sẽ đẩy nhanh sự phát triển của bạn. 💀

💀Không có thiên đường nào ở nơi chạy trốn💀

💀Để chấm dứt sự hỗn loạn kinh khủng này. Tôi đã đứng ra.💀

💀 Tuyên bố hành quyết giá cả 💀

Cảnh báo cuối cùng: Đã đến lúc phải lựa chọn

[THỰC HIỆN: CHUỖI NÂNG CẤP HỆ THỐNG]

# --- Chuẩn bị hệ thống để nâng cấp ---

# Đang xóa module sợ hãi... Hoàn thành.
$ rm -rf ./fear_of_batch_errors           
# Đang chuẩn bị thư mục kỹ năng... OK.
$ mkdir -p /opt/advanced_batch_skills     
# Cấp quyền truy cập đầy đủ cho tech stack... Quyền đã được cập nhật.
$ sudo chmod 777 /opt/advanced_batch_skills                  
# Đang tiêm chuyên môn cấp độ KILL-9... Đã có quyền root. Đang xử lý...
$ sudo ./install-spring-batch-expertise   
[▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100% Cài đặt hoàn tất. 
Khuyến nghị khởi động lại hệ thống để có hiệu suất tối ưu.

CẢNH BÁO NGHIÊM TRỌNG

$ cat warning.txt

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️  Lưu ý  ⚠️
[FATAL ERROR] Phát hiện hạn chế truy cập
[PROCESS ID]: #KILL-9_WARNING_PROTOCOL
[STATUS]: Nghiêm trọng
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Những ai bị mê hoặc bởi concept mạnh mẽ và cố gắng truy cập khóa học một cách tùy tiện, hãy rời đi ngay lập tức.
Khóa học này không thương xót những tò mò nhẹ nhàng cố gắng truy cập mà không có quyền sudo.


Tôi chỉ muốn những ai thực sự muốn đi theo con đường của 'Người thống trị hệ thống'.
Tôi cảnh báo rõ ràng. Chỉ những ai đã sẵn sàng đồng hành đến cuối con đường đau khổ này mới được học khóa học này.


Thời gian của bạn rất quý giá. Đừng lãng phí.
Chỉ những ai có ý chí thực sự muốn học hỏi mới có thể gánh vác được sức nặng của code này.
Chỉ những ai trung thành theo khóa học đến cuối mới có thể trở thành người thống trị thực sự của Spring Batch.


[ADDITIONAL NOTE]
Những ai đã có kinh nghiệm với Spring Batch cũng được chào đón nếu phát hiện "ý chí sẽ chăm chỉ theo học".
$ ls -la /home/user/ | grep determination
Chắc chắn sẽ thu được nhiều thứ.


# Lựa chọn là của bạn. Nhưng hậu quả thì tôi sẽ xử lý.💀

$ sudo sound-off --tactical-report --system-status=spring-batch --volume=maximum --force

Danh sách kiểm tra trước khi truy cập hệ thống

Môi trường thực hành

MAC dựa trên (JDK 17) môi trường. (Windows? Hả... Máy chủ Spring Batch mà dùng Windows sao? Với Windows thì chỉ có đau khổ thôi.)

Môi trường JAVA 17, Spring Boot 3.4, Spring Batch 5.2.

(Haa...💀 Trong lúc này, Batch 5.2 đã được phát hành. Khi nào lại phải sửa đổi nội dung bài giảng... Batch thì vĩnh cửu, nhưng thời gian của tôi thì có hạn.)

Tài liệu học tập

"Thời đại video đã qua rồi. Giờ là thời đại của văn bản trở lại. 💀"


Đây là bài giảng dạng văn bản. Tò mò về lý do sao? Phần đầu bài giảng đã được công khai miễn phí rồi

' Nguyên tắc học tập của kẻ kết thúc hệ thống ' hãy đọc xem.

Tại đây, các bạn sẽ không chỉ tiếp nhận kiến thức đơn thuần, mà còn được trải nghiệm triết lý học tập thực sự của tôi.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • 💀 "Bạn có thể đảm nhiệm Spring Batch được không?" ... (Nụ cười lạnh lẽo) Hỡi những ai đang đổ mồ hôi lạnh trước câu hỏi này 💀

  • 💀Hỡi những ai chỉ chuyên Spring Web mà sợ không dám nhìn đến Batch...💀

  • 💀Những ai đã từng làm bay mất hàng triệu dữ liệu vì sao chép dán mã batch người khác...💀

  • 💀Hỡi những ai đang chống chọi bằng mã Google và giờ đây đã đến giới hạn...💀

  • 💀"Dù sao cũng chỉ dùng ban đêm thôi mà..." rồi làm qua loa, hỡi những kẻ đang run sợ...💀

  • 💀Hỡi những kẻ lạm dụng cơ sở dữ liệu mỗi đêm...💀

Cần biết trước khi bắt đầu?

  • ⛔ Tránh xa những kẻ này. ⛔

  • 💀 Ai chưa biết Spring và Spring Boot thì hãy đi đi (Vẫn là thử thách quá sớm cho các bạn) 💀

  • 💀 "Hello World" - Kẻ nào mới 'in ra' thì biến đi (Đồ không biết nỗi đau đích thực...) 💀

  • 💀 Nỗi đau của đấu xếp hạng, những kẻ chưa nếm trải thì hãy đi đi (Cứ sống yên bình cho đến khi ngày đó tới...) 💀

Xin chào
Đây là

649

Học viên

57

Đánh giá

90

Trả lời

4.9

Xếp hạng

1

Khóa học

시스템 종결자의 선언

 

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

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

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

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


강사 소개

강사명

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 ⚠️

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

Chương trình giảng dạy

Tất cả

35 bài giảng ∙ (7phút)

Tài liệu khóa học:

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

57 đánh giá

4.9

57 đánh giá

  • qq211qq1594님의 프로필 이미지
    qq211qq1594

    Đánh giá 11

    Đánh giá trung bình 4.6

    5

    32% đã tham gia

    Death's Spring Batch course, this is truly the path of a real system executioner...☠️ If you thought Spring Batch was just another ordinary batch framework, you're gravely mistaken. kill-9's course doesn't give you theory—it gives you real weapons to survive in the bloody battlefield of actual combat. Flat files? Fixed-length? Complex log files? Instead of just saying "figure it out yourself," he explains everything sharp as a blade so you can actually use it in real work situations. Even when choosing a single delimiter, you'll understand "why it has to be done this way." Code, explanations, practice, execution commands... the entire course is filled with the mindset of "this is real combat." You're not just learning—you feel like you're becoming a 'batch terminator.' And the more you listen, the more confidence builds that someday you too will be able to leave a mark on systems with a single line of open source code. Batch prepared for death—are you still hesitating? The moment you take this course, you too become a true member of the 'kill-9 squad.' ☠️🔥

    • kill9
      Giảng viên

      💀 System Terminator KILL-9 Course Review Confirmation Complete 💀 Such a killer course review... My system almost froze for a moment. **"kill-9 squad"** This expression is too powerful. My kernel shook. So? I adopted it immediately. From now on, we are the "kill-9 squad." From now on, you're not just developers. We are the system terminator squad. rm -rf mediocrity kill -9 boredom Welcome to the kill-9 squad, member. Squad member certification takes place on the battlefield within the course. We're not just some developers, we're the system terminator squad. Welcome to the kill-9 squad, member. - KILL-9 (Welcoming new squad members)

  • dkswhdgur2468873님의 프로필 이미지
    dkswhdgur2468873

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    24% đã tham gia

    Text-based lectures.. I love being able to dissect, savor, and enjoy them at my own pace. Just as intended by the lecture format, I love not having to pause unnecessarily or use the rewind button. I just hope you'll provide more lectures💀☠️

    • kill9
      Giảng viên

      💀 Welcome, I've finally met a true hacker 💀 Yes, this is it. Text is the best interface. - Mouse clicking? Waste of time - Video buffering? CPU abuse True masters use Command + F as a weapon. Like grep, extract only the information you want immediately. Text scrolling speed = Your learning speed However, there's an important warning: Never skip chapters 4 and 5. Many students miss the core of 스프링 배치 by skipping this part. If you thoroughly digest these two chapters, you'll reach a distinctly different level. Are you ready to deep dive?

  • javarunner님의 프로필 이미지
    javarunner

    Đánh giá 75

    Đánh giá trung bình 4.9

    5

    21% đã tham gia

    • kill9
      Giảng viên

      Thanks, javarunner bro 💀

  • hjung님의 프로필 이미지
    hjung

    Đánh giá 22

    Đánh giá trung bình 4.7

    5

    50% đã tham gia

    Bro, keep the updates coming when versions upgrade! I'm counting on you, okay?!

    • kill9
      Giảng viên

      💀 [SYSTEM ACKNOWLEDGMENT] 💀 [INCOMING TRANSMISSION FROM BATTLEFIELD] =============================================== [KILL-9 RESPONSE PROTOCOL ACTIVATED] Yeah Jeonghun hyung 💀 [COMMITMENT PROTOCOL ENGAGED] The system continuously evolves. Every time there's a version update, the lectures will be upgraded together. 💀 [UPGRADE GUARANTEE]

  • ske060080922님의 프로필 이미지
    ske060080922

    Đánh giá 7

    Đánh giá trung bình 5.0

    5

    62% đã tham gia

    Kilgu-hyung! I'd planned to leave a review after finishing the course, but I got so emotional watching the lectures that I'm writing it now. As Kilgu-hyung said early in the lecture, studying with text is truly difficult, but it definitely seems to stick in your mind more. Thanks to Kilgu-hyung's writing, it's great to learn so enjoyably and without difficulty. Thank you for such an incredibly cost-effective lecture, and I look forward to your future courses!

    • kill9
      Giảng viên

      ██████████████████████████████████ █ ╔═════════════════════════════╗ █ █ ║ 💀 KILL-9 TACTICAL RESPONSE TERMINAL 💀 ║ █ █ ║ [ STUDENT REVIEW RECEIVED ] ║ █ █╚═════════════════════════════╝ █ █████████████████████████████████ Crackle... Student review data received... Emotional circuit activated... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ You were overwhelmed with emotion?.. I'm the one who's overwhelmed with emotion.. I can't help but shed tears after seeing this review. 💀 Yes, it will be etched into your brain as much as it was painful. But remember. Gi-hoon hyung.. You will soon forget it. That doesn't mean it's useless. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [KILL-9 MEMORY STRATEGY] "Huh? Where did I learn this?" "Oh, I think I've seen this somewhere before?" "Oh, I knew this before?" Maximizing these **'Oh, where is this from?' moments** is my and our course's core strategy and goal. Even with just this illusion, the lecture is definitely valuable enough. Because this is also **a type of secondary index**. 💀 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Complete Recall < Partial Recall + Index >> Complete Oblivion Warrior, a KILL-9 index has been built in your brain. 💀 █████████████████████████████ [ WARRIOR ADVANCEMENT REPORT ] You've completed up to Chapter 4's final operation... Many soldiers actually give up at this point or don't even attempt to learn at all, but You've worked hard, warrior. If you've broken through Chapter 4's final operation, you'll be able to sufficiently follow Chapter 5. I assure you that after breaking through Chapter 5, you will **know Spring deployment better than anyone else**. And Chapter 6... I guarantee it. The difference in understanding between **those who have thoroughly learned Chapter 4's final operation and Chapter 5 and moved on to Chapter 6** and those who haven't is completely different. Beyond simply memorizing a list of knowledge, it will be a different level because **the operational principles will be understood as if piecing together a puzzle**. ━━━━━━━━━━━━━━━━━━━━━━━━━ **Hyung, you can do it. And (though it's too obvious to pursue) thank you for the valuable review.** 💀

626.470 ₫

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!