Jan Weinschenker
Java's Project Loom & Co - the end for reactive programming?
#1about 2 minutes
Understanding the goals of Java's Project Loom
Project Loom aims to simplify writing, maintaining, and observing high-throughput concurrent applications by introducing lightweight virtual threads.
#2about 3 minutes
The core principles of reactive programming
Reactive programming helps applications stay responsive and elastic under heavy load by using a message-driven architecture to process external events.
#3about 3 minutes
Understanding the problem of blocked threads in concurrency
Blocked threads waste processing time while waiting for I/O operations, which is the core problem that both Project Loom and reactive frameworks aim to solve.
#4about 4 minutes
Exploring approaches to non-blocking software development
Various approaches like callbacks, reactive frameworks, and Kotlin coroutines have been developed to manage a limited number of threads against a potentially unlimited amount of work.
#5about 2 minutes
Demonstrating failure with traditional blocking Java code
A simple concurrent Java 17 application fails with an out-of-memory error when trying to handle a large number of blocking tasks with platform threads.
#6about 3 minutes
Solving blocking issues with reactive and Kotlin code
The same concurrency problem is successfully solved using a reactive framework and Kotlin coroutines, but both require adopting a new programming model or language.
#7about 2 minutes
Solving blocking issues with Project Loom's virtual threads
The original failing imperative Java code is fixed by simply switching to a virtual thread executor, demonstrating how Project Loom solves the problem without changing the programming model.
#8about 2 minutes
How virtual threads use carrier threads to avoid blocking
Virtual threads are unmounted from their carrier (platform) threads when they block, allowing the carrier thread to execute other virtual threads and achieve high concurrency.
#9about 2 minutes
Conclusion on Project Loom's impact on reactive programming
Project Loom allows developers to solve concurrency problems with simple sequential code, making it harder to justify the complexity of reactive frameworks for many use cases.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
01:12 MIN
Comparing Project Loom with reactive programming
Kubernetes Native Java
02:33 MIN
Q&A on Project Loom and integration challenges
Side-by-Side: Reactive vs non-reactive Java
15:32 MIN
Q&A on GraalVM, Project Loom, and gRPC
Bootiful Spring Boot 3
03:59 MIN
Understanding the new virtual threads model
Modern Java: This is not your father's Java anymore
09:05 MIN
Q&A on virtual threads, reactive programming, and Java 21
Introduction and pitfalls of Java's new concurrency model
07:13 MIN
How virtual threads solve the concurrency problem
Java 21: The Revolution of Virtual Threads - A Deep Dive
02:13 MIN
Exploring reactive Java frameworks and adoption challenges
Side-by-Side: Reactive vs non-reactive Java
03:10 MIN
Overview of major Java development projects
Best of Java 15 and beyond—my favorite features
Featured Partners
Related Videos
Introduction and pitfalls of Java's new concurrency model
David Vlijmincx
Java 21: The Revolution of Virtual Threads - A Deep Dive
Christian Woerz
Side-by-Side: Reactive vs non-reactive Java
Jan Weinschenker
Modern Java: This is not your father's Java anymore
Ron Veen
Beam Me Up, Java! Unraveling the Warp-Speed Evolution: A Journey through Java LTS Versions 11 to 21
Jonathan Vila
Going reactive with Spring WebFlux
Michael Eder & Philipp Frauenthaler
Modern Java 25
Ron Veen
Java with a Clojure mindset
Dan Lebrero
Related Articles
View all articles.gif?w=240&auto=compress,format)

.webp?w=240&auto=compress,format)
.gif?w=240&auto=compress,format)
From learning to earning
Jobs that call for the skills explored in this talk.

iov42
Vienna, Austria
Senior
Java
Spring
Ethereum
PostgreSQL
Blockchain
+3


wunschlösung GmbH
Jena, Germany
Intermediate
Senior
Java

wunschlösung GmbH
Jena, Germany
Intermediate
Senior
Java
Docker
MongoDB


APRIORI - business solutions AG


