javascript - ノードと Java の同時実行シナリオの比較。説明を手伝ってください。
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-17 10:08:00
0
1
558

前提シングルコアCPU配下にノードプログラムがインストールされています。プログラムは非常にシンプルです。httpサーバーです。リクエストが来ると、5秒遅れで結果が返されます( 5秒で行われることがわかります同期問題)

3 つのリクエストが同時に受信された場合、結果は次のようになります:
シナリオ 1: 最初のリクエストは 5 秒後に結果を取得し、2 番目と 3 番目のリクエストは 10 秒と 15 秒後に結果を取得します
シナリオ 2: すべてのリクエストは 5 秒後に結果を取得します

Java Tomcat に変更したら、どのようなシナリオになりますか? 皆さん、ありがとう!

曾经蜡笔没有小新
曾经蜡笔没有小新

全員に返信(1)
洪涛

場合は 5 秒遅延し、node.js はクラスターやその他の最適化を追加せずに単純なシングルスレッド操作です同步的 リーリー

したがって、複数のリクエストが同時に開始された場合、シナリオ 1

しかし、通常、node.js では、次のような状況であれば、完全なブロックに遭遇することはほとんどありません

: リーリー 同步等待 5 秒結果は当然

场景2 Java に関しては、マルチスレッドによって同時実行がサポートされており、パフォーマンスが十分である場合、たとえば同時実行が 3 のみである場合、シナリオ 2 と見なすことができます。もちろん、スレッドのオーバーヘッドが関係するため、同時実行性が増加すると、そのメモリ使用量は、node.js モデルをはるかに超えます

実際、これが、node.js が IO 集中型で低コンピューティングのシナリオに適していると言われる理由です。私の他の回答を参照してください

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート