[解決済み] Node.jsを使う理由とタイミングは?重複
質問
重複の可能性があります。
Node.jsを使用するタイミングはどのように決めるのですか?
少し曖昧な表現になってしまいましたが、Node.jsを使用する本当の利点を理解しようとしています。 Node.js を使うことの本当の利点を理解しようとしています。
私はJavaScript愛好家なので、おそらくNode.jsで遊ぶつもりですが、私のプロジェクトでそれを使用すべきかどうかを知りたいのです。
どのように解決するのですか?
イベント型の非同期ノンブロッキングです。 I/O の上に構築された V8 .
このように、GoogleのJavaScriptインタプリタであるV8は、すべてのパフォーマンスを獲得しています。JavaScript のパフォーマンス競争はまだ終わっていないので、Google は V8 のパフォーマンスを常に更新することが期待できます (無料)。
私たちは、I/Oを行うための正しい方法であるノンブロッキングI/Oを持っています。これは、イベント ループと、I/O に非同期コールバックを使用することに基づいています。
これは、HTTPサーバーを作成するような便利なツールを提供します。 TCP サーバの作成、ファイル I/O の処理などの便利なツールを提供します。
これは、ゼロからCで全体を書くことなく、あらゆる種類のI/Oを行うための低レベルで高パフォーマンスのプラットフォームです。そして、ノンブロッキングI/Oのため、非常によくスケールします。
ですから、ノンブロッキングI/Oを使用して、高度にスケーリングされた効率的なアプリケーションを書きたいのであれば、Node.jsを使いたいのです。必要であれば、Cで拡張を書くことによって、コードの一部を手作業で最適化することができます。
Node.jsのためのOSライブラリはたくさんあり、次のような抽象化されたものを提供します。 Express.js や 現在 .
Node.jsを使いたくないのは、(遅い)高水準の抽象化ですべてをやってもらいたい場合です。Node.jsを使いたくはないでしょう。 RAD . 他のフレームワークに組み込まれていることを行うために大規模なコードを自分で書かなければならない、あるいは API がまだ安定していないか 1.0 未満のリリースであるために Node.js を使用できないなどの理由で、若いプラットフォームを信頼する余裕がない場合は Node.js を使用しない方がよいでしょう。
関連
-
Vueのフォームイベントのデータバインディングの説明
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsでファイルを書き込む
-
[解決済み] Node.jsのmodule.exportsの目的と使い方を教えてください。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Vueの要素ツリーコントロールに破線を追加する説明
-
JSアレイループと効率解析の比較
-
jQueryのコピーオブジェクトの説明
-
[解決済み】Uncaught SyntaxError: JSONの位置0に予期しないトークンuがあります。
-
[解決済み】Node.jsで "Cannot find module "エラーを解決するには?
-
[解決済み】Node.js Error: Cannot find module express
-
[解決済み】「X-Frame-Options」を「SAMEORIGIN」に設定したため、フレームでの表示を拒否された。
-
[解決済み】ExpressJS - throw er Unhandled errorイベント
-
JavaScriptのgetElementById、getElementsByTagNam、getElementsByClassNameの違いと使い方
-
[解決済み] Node.jsを使うタイミングをどう判断するか?