Java仮想スレッドの負荷下:3つの本番環境における制限 ノート

Java仮想スレッドの負荷下:3つの本番環境における制限

仮想スレッドにより、より多くのリクエストが同時に待機している間、通常のブロッキングコードを維持できます。しかし、負荷がかかると、次の3つの重要な疑問が浮上します。どれだけの作業を受け入れるか? 安価なスレッドでも高価なキューを構築できます。 ロック内に何を含めるべきか? スリープ中のロック保持者は、他のすべての人を待たせ続けます。 放棄された作業を誰が停止するか? 呼び出し元のタイムアウトはタスクをキャンセルしません。以下の例では、個別のビフォー・アフタープログラムでこれらの疑問を分離しています。各プログラムは完全です。コードブロックを、表示されているファイル名で保存し、引数なしで、付属のコマンドを実行してください。必要なのはJDK 25だけです。コンパクトなソースファイル構文を使用しているため、クラス宣言、ビルドツール、外部ライブラリ、またはプレビューフラグは必要ありません。