LoginSignup
1
0

More than 3 years have passed since last update.

Node.js基礎 備忘録

Posted at

リクエストの対処する仕組み

スレッドモデル(Apache)

リクエストが来た際にスレッドを作成して対応する
※スレッドは同時にひとつのリクエストしか処理できない。
新しいリクエストが来た際には、新しいリクエストを作成して対応する

問題

スレッドを作成するとメモリを消費するため、スレッドの作成限界がある。
リクエストが多い場合、スレッドが立ちあげれず、リクエストが待ち状態になる。

イベントループ(Node.js)

メインスレッドとバックスレッドの2つがあり、動作している。

メインスレッドには、処理待ちのキューがあり、リクエストが来た際には、キューに登録する。
※新しくスレッドは作成しない

キューをループで回し、バックグランドで動くスレッドに渡し、そちらで処理を実行していく。

プログラムを書く際は、ループをブロックしないように記述する。(Non-blocking)

時間がかかりそうな処理は、コールバック関数で実装する

メインで動くスレッドが、新規に作成されない為、シングルスレッドと呼ばれる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0