l この⽅式はブロッキングI/Oと同期処理でリクエストを捌くが、OSスレッド数がボト ルネックになってしまうことがある(C10K問題) l イベントループ、Coroutine、軽量スレッドを使うことで、これが解決できる イベントループ、Coroutine、軽量スレッドを使うことで 少数のOSスレッドで多数のリクエストを捌くことができる
31 l 軽量スレッドの実⾏状態は軽量スレッドのスタックで保持している l 軽量スレッドがブロッキングI/Oしようとするとランタイムが検知してノンブロッキン グI/Oに書き換えてI/Oを⾏い、軽量スレッドを⼀時停⽌する l I/Oが完了したら、軽量スレッドのスタックをOSスレッドのスタックに復元すること で実⾏を再開する ランタイムがI/Oと軽量スレッドの実⾏を管理してくれる