Read OSS

ReactiveX/RxJava

7 articles

前提知識

01

RxJavaの内部構造:アーキテクチャの概要と877ファイルの歩き方

プロジェクト構造、public/internal APIの境界、5+2のコアリアクティブ型、命名規則、ビルド基盤を網羅するRxJavaコードベースの全体マップ。

02

サブスクライブの連鎖:RxJava のすべてのオペレーターが実際にどう動くか

ユーザーの呼び出しからプラグインフックを経て subscribeActual() に至るまでの subscribe フローを追いながら、FlowableMap を題材にオペレーターのデコレーターパターンを解剖します。

03

エンジンルームの深層:ドレインループ、Queue Fusion、ロックフリー並行処理

RxJava のパフォーマンスを支える WIP ドレインループパターン、QueueFuseable によるオペレーター融合プロトコル、ロックフリー SPSC キュー、ConditionalSubscriber による最適化を深く掘り下げます。

04

スケジューラの全貌:スレッドプール、仮想スレッド、時間制御

RxJava のスレッド抽象化を Scheduler/Worker 基底クラスから ComputationScheduler、CachedScheduler、DeferredExecutorScheduler(仮想スレッド)、TestScheduler まで徹底解説します。

05

バックプレッシャー:Flowable が高速なプロデューサーから低速なコンシューマーを守る仕組み

request(n) プロトコル、BackpressureHelper の CAS 演算、5 つの BackpressureStrategy オプション、prefetch/limit パターン、FlowableFlatMap のマルチソースリクエスト管理について解説します。

06

RxJava 4.x: Streamable、仮想スレッド、そしてリアクティブ Java の未来

非同期列挙を実現する Streamable<T>、命令型の仮想スレッドコードを書くための VirtualGenerator/VirtualEmitter、sealed 型・records の活用、そして java.util.concurrent.Flow への移行を解説します。

07

54,000行を正直に保つ:RxJavaのテストとバリデーションアーキテクチャ

TestSubscriber、TestScheduler、24のバリデーターメタテスト、Reactive Streams TCK準拠、JMHベンチマーク、そしてそれらをつなぐCIパイプラインを詳しく解説します。