Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Batch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Rodrigo Graciano
October 07, 2022
Programming
190
0
Share
Cloud Batch
Deck for the Batch Processing Cloud Apps with Java
Rodrigo Graciano
October 07, 2022
More Decks by Rodrigo Graciano
See All by Rodrigo Graciano
Advancing with Java
graciano
0
26
Your Java isn't the same
graciano
0
220
Batch Processing
graciano
0
420
Java 9 ao 17 - Oracle no TDC
graciano
0
140
KnoxJava - Java 9-17
graciano
0
170
Of concurrency and other demons
graciano
0
150
Java 9 to Java 16: A review of recent changes to the language
graciano
0
170
Java 9 ao 15 - Evolução da Linguagem Java
graciano
0
290
Other Decks in Programming
See All in Programming
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
280
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
180
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
620
Lightning-Fast Method Calls with Ruby 4.1 ZJIT / RubyKaigi 2026
k0kubun
3
770
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
280
Angular Signal Forms
debug_mode
0
110
CDK Deployのための ”反響定位”
watany
5
800
事業会社でのセキュリティ長期インターンについて
masachikaura
0
260
GoogleCloudとterraform完全に理解した
terisuke
1
120
Back to the roots of date
jinroq
0
280
AIエージェントで業務改善してみた
taku271
0
540
第3木曜LT会 #28
tinykitten
PRO
0
110
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
55k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
890
[SF Ruby Conf 2025] Rails X
palkan
2
970
How GitHub (no longer) Works
holman
316
150k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
450
Site-Speed That Sticks
csswizardry
13
1.2k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
270
Between Models and Reality
mayunak
3
270
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Balancing Empowerment & Direction
lara
6
1.1k
Technical Leadership for Architectural Decision Making
baasie
3
330
Transcript
BATCH PROCESSING CLOUD APPS WITH JAVA ELDER MORAES RODRIGO GRACIANO
OUTUBRO 2022
WHAT SPRING BATCH IS? Spring Batch is a lightweight, comprehensive
batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. https://docs.spring.io/spring-batch/docs/current/reference/html/index-single.html#spring-batch-intro
WHAT SPRING BATCH IS NOT? Spring Batch is not a
scheduler https://docs.spring.io/spring-batch/docs/current/reference/html/index-single.html#spring-batch-intro
RODRIGO GRACIANO • Principal Software Engineer - NY • Líder
do JUG de NY - NYJavaSIG • graciano.dev • Twitter: @rodrigograciano
ELDER MORAES • Java Champion • Autor de diversos livros
• Developer Advocate na Red Hat • Líder do SouJava • eldermoraes.com • Twitter: @elderjava
THE BASICS
BATCH VOCABULARY
BATCH COMPONENTS JOB
BATCH COMPONENTS STEP
BATCH ARCHITECTURE https://docs.spring.io/spring-batch/docs/current/reference/html/images/spring-batch-reference-model.png JobRepository JobLauncher Job Step 1 *
BATCH COMPONENTS TASKLET
TASKLETS • 1 time operation instead of read/write • Run
a DB query • Copy Files • Zip/unzip files
CHUNK TASKLET - STEP SEQUENCE Process Step Read Write
CHUNK-ORIENTED STEP + PROCESSORS https://docs.spring.io/spring-batch/docs/current/reference/html/images/chunk-oriented-processing-with-item-processor.png
SHOW ME SOME CODE: BASIC DEMO This Photo by Unknown
Author is licensed under CC BY-NC-ND
• JobRepository • JobLauncher • JobRegistry • JobExplorer • PlatformTransactionManager
• JobBuilderFactory • StepBuilderFactory @EnableBatchProcessing
JOB REPOSITORY •It’s how Job, Step, JobParameters, JobExecution, and StepExecution
are persisted
READERS • Database (JDBC, Mongo, Neo4j, Hibernate, etc.) • Flat
Files (delimited, fixed-length) • XML, JSON • JMS, Kafka, Amqp • Multi-file
WRITERS • Database (JDBC, Mongo, Neo4j, Hibernate, etc.) • Flat
Files (delimited, fixed-length) • XML, JSON • JMS, Kafka, Amqp • Multi-file • Email
PROCESSORS •Transforming •Filtering •Validations
LISTENERS JobExecutionListener StepExecutionListener ItemReadListener ItemWriteListener ChunkListener ItemProcessListener SkipListener
JOB EXECUTION LISTENERS
BEYOND THE BASICS SCALING AND PARALLEL PROCESSING
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
PARALLEL PROCESSING Step 1 Step 2 Step 3 Start Step
4
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
SCALING AND PARALLEL PROCESSING •Parallel steps •Multi-threaded •Async Processor and
AsyncWriter •Remote Partitioning •Remote Chunking
None
WHAT ABOUT THE CLOUD?
QUESTIONS? https://github.com/rodrigolgraciano/cloud-batch.git https://speakerdeck.com/graciano/cloud-batch @rodrigograciano @ elderjava