なぜnode.jsは大量のリクエストをさばけるのか

A.イベントループという処理形式を使っているから

イベントループとは

リクエストをキューに登録し、ループが回ってきたら順番にバックグラウンドの処理に回す形式。
メインのスレッドが1つしかないためシングルスレッド方式とも

前の処理が終わるまで次の処理を待つ必要がなく、
次々にリクエストを登録/処理することができる。

イベントループの注意点
  • 処理が終わる順番が分からない
  • ループをブロックしないように書かなくてはいけない

→この書き方をNon-blockingという