0

Node.js コードを継承し、これらの行で行き詰まりました

....
var app1 = express();
app1.listen(8080)

var app2 = express();
app2.listen(8081)

var app3 = express();
app3.listen(8082)

....

これらの行はすべて、serverInit.js という 1 つの js ファイルにあります。

各 app1、app2、および app3 には、独自のルートと異なるコードがあります。

これが実際にどのように機能するのだろうか?ノードはapp1、app2、app3ごとに個別のスレッドを作成しますか、それともすべてのアプリが1つのスレッドによって処理されますか?

前もって感謝します

4

2 に答える 2

2

いいえ、アプリケーション コード(Express ライブラリを含む) はシングル スレッドです。もちろん、Node 自体はマルチスレッド化されており、ネットワーク I/O は個別のスレッドで処理されますが、これは Express アプリが 1 つでも数百でも同じです。

これで、Express の 3 つのインスタンスが作成され、それぞれが異なるポートにバインドされました。各ポートのリクエストは、一致する Express インスタンスにディスパッチされます。

于 2013-06-18T17:38:19.300 に答える