〒108-0075 東京都港区港南 2-16-3 品川グランドセントラルタワー
※本イベントは英語によるセッションです。通訳などはございません。
非同期処理が主流となったJavaの世界に、Java 21で登場したVirtual Threadsが新たな選択肢をもたらしました。本セッションでは、従来のReactive StreamsとVirtual Threadsの違いや特徴を整理し、両者をどう使い分けるべきか、あるいは組み合わせる余地があるのかを探ります。
シンプルなストリームライブラリの実装を通じて、構造化並行性、バックプレッシャー、パフォーマンスなど、モダンJavaの可能性を実践的に学べる内容です。是非、ご参加ください。
ご注意
時間 | 内容 |
---|---|
19:00~19:10 | オープニング |
19:10~20:50 | From Reactive Streams to Virtual Threads by Adam Warski |
20:50~21:00 | クロージング |
Since Java's inception, the programming model has shifted from synchronous to asynchronous, and for good reasons: performance, throughput, low latency. Project Loom, introduced in Java 21, challenges the status quo: Virtual Threads keep the performance, but bring back the familiar synchronous, direct-style model.
Does this mean initiatives such as Reactive Streams are now irrelevant? Can we combine the resilience and safety of Reactive Streams, with the approachability of Virtual Threads? And if yes, what are the tradeoffs?
During the session, we'll first walk through the design principles of Reactive Streams, as well as the internal mechanics of Virtual Threads. Then, we'll proceed to implementing a simple streams library, with a functional API (resembling Akka Streams or RxJava), on top of modern Java. Next, we'll take a look at asynchronous operations and introduce structured concurrency. Finally, we'll discuss backpressure handling, performance, and summarise the strong and weak points of the approach discussed.
Adam Warski
I am one of the co-founders of SoftwareMill, where I primarily code using Java, Scala, and other interesting technologies. I am actively involved in open-source projects, such as Ox, Tapir, sttp, Quicklens, ElasticMQ, and others. I have also been a speaker at major conferences, including JavaOne, Devoxx, GeeCON and ScalaDays.
In addition to writing closed- and open-source software, I spend my free time exploring various (functional) programming-related subjects. Any ideas or insights I gain usually end up with a blog (https://warski.org/articles).
日本におけるJavaユーザーグループです。 公式サイト/Official site http://www.java-users.jp/
メンバーになる