Reactive & Messaging
Non-blocking apps and event-driven systems.
Handle huge concurrency without a thread per request, and let services talk through events. Project Reactor, Spring WebFlux, R2DBC, async and scheduling, application events, and messaging with Kafka and RabbitMQ.
Lessons in this stage
- 01
Reactive Programming & Reactor
AdvancedWhy non-blocking matters, and the two publisher types at the heart of it: Mono (0-1) and Flux (0-N).
18 min - 02
Spring WebFlux
AdvancedThe reactive web stack: controllers that return Mono/Flux and handle massive concurrency on few threads.
16 min - 03
Reactive Data with R2DBC
AdvancedTalking to a database without blocking, so the whole request pipeline stays reactive end to end.
14 min - 04
Async & Scheduling
IntermediateRun work off the request thread with @Async, and run jobs on a timer with @Scheduled.
14 min - 05
Application Events
IntermediateDecouple components in-process by publishing and listening for events - the gateway to event-driven design.
16 min - 06
Messaging with Kafka
AdvancedDurable, high-throughput event streaming between services with Spring for Apache Kafka.
18 min - 07
Messaging with RabbitMQ
AdvancedFlexible message routing with a broker and Spring AMQP - queues, exchanges, and when to choose it over Kafka.
14 min
Ready to test yourself?
Take the stage assessment to check your mastery. Pass it to earn a stage badge toward your Javaneer certificate.