JDKガイド:正式API・ランタイム確認・プレビュー5
言語・API の状態と実際にインストールするランタイムを区別します。過去のリリースとプレビュー資料を含むため、記録されたバージョンに従い、古いリリースノートから現在のサポート状況を推測しないでください。
仮想スレッドのバージョン差
JFRでJDK 21と25のモニターピンニングを観測し、スケジューリング動作とスループットの主張を区別します。
- Java仮想スレッド:JDK 21と25の違いとJFRによるピン留めの確認
仮想スレッドのキャリアとI/O待機を理解し、実行可能なJFRプローブでJDK 21と25のsynchronized内のピン留めを比較します。確定API、プレビュー、残るボトルネックを区別します。
リクエストコンテキストの範囲
JDK 25で正式化されたScopedValueを使い、バインディングの復元と非同期の継承を区別します。
- JDK 25 ScopedValue:ThreadLocalを超えるリクエストコンテキスト
確定したScopedValue APIを仮想スレッドで実行します。入れ子のバインディング、例外時の復元、通常の子スレッドに継承されない動作と、ThreadLocal・構造化並行処理との境界を確認します。
API容量の計画
10k RPSの境界を定め、例示の予算を計算し、リクエストの受付制御の確認と負荷試験の証拠を区別します。
- 最新JDKで10k RPS APIを設計する:容量と過負荷制御
JDK 27で10,000 RPS HTTP APIを計画し、容量・データベース・障害の予算を明確にします。仮想スレッドの受け入れ制御例を実行し、設計上の仮定と負荷試験の証拠を区別します。
証明書の信頼を確認
信頼ストアの一覧を解釈する前に、JVMとベンダーの案内を確認します。
- JDKのeMudhra証明書:稼働JVMとトラストストアを確認する
Oracle、Temurin、UbuntuのeMudhra信頼取り消し方針を区別します。バージョン表示や別名だけで判定せず、JSSEのストア選択と証明書フィンガープリントを調べます。
値オブジェクトの意味を試す
JDK 28 EAで通常のレコードと値オブジェクトを比較し、メモリ配置が保証されるとは推論しません。
- Java Project Valhalla:値オブジェクト、レコード、JDK 28プレビュー
Project ValhallaとJEP 401を、実行可能なJDK 28 EAの例で理解します。レコードの同一性、値の等価性、モニター制約を比較し、最適化の限界も明確にします。