この記事はブロッキングやノンブロッキンクとは何か、Servlet3.0の Async Servletや Servlet3.1の NonblockingI/Oとは何か、を理解することが目的です。 検証バージョン ブロッキングI/O コード例(シングルスレッド) 実行例 コード例(マルチスレッド) 実行例(マルチスレッド) ブロッキングI/Oで何がいいか ブロッキングI/Oで何が困るか ノンブロッキングI/O コード例 実行例 ノンブロッキングI/Oで何がいいか ノンブロッキングI/Oで何が困るか Tomcatのコネクタ実装 ブロッキングI/O HTTP Keep-alive 今までありがとうBIOコネクタ ノンブロッキングI/O SocketProcessorの実行タイミング HTTP Keep-alive BIOとNIOを比べる その他の仕組み Servlet3.0 Async Servl