ホームページ >ウェブフロントエンド >jsチュートリアル >7 つの質問による Node.js の簡単な紹介

7 つの質問による Node.js の簡単な紹介

青灯夜游
青灯夜游転載
2021-12-20 18:02:011679ブラウズ

Node.js をご存知ですか?理解できない場合は、試してみることもできます。この記事では、7 つの質問を通して Node.js について簡単に紹介します。皆様のお役に立てれば幸いです。

7 つの質問による Node.js の簡単な紹介

1. Node は何年に生まれましたか?

Node の誕生2009

2009 年 3 月、Node の作者は、軽量のノードを作成する準備をしていることをブログで発表しました。 V8 Web サーバーに基づいており、ライブラリのセットを提供します。

同じ年の 5 月に、初期バージョンが GitHub でリリースされました。

2011 年 7 月に、Windows バージョンがリリースされ、次のサポートが提供されました。 Microsoft

#2. 誰が作成したのですか?

Ryan Dahl は Node の作成者であり、Node の父として知られています

しかし、2012 年 1 月に、Ryan Dahl が指揮を執ることになります。この人物の身元は、Node のバージョンのリリースとバグ修正作業を受け入れた Isaac Z.Schlueter に転送されました。Isaac Z.Schlueter は、後の NPM

3 の作成者でもありました。それはノードと呼ばれましたか?

Node には、Nodejs、NodeJS、Node.js など、さまざまなニックネームがあります。では、なぜ Node なのか?

当初、Ryan Dahl は自分のプロジェクトを Web サーバーである web.js と呼んでいましたが、プロジェクトの開発は単に Web サーバーを開発するという彼の当初の考えを超えていました。これはネットワーク アプリケーションを構築するための基本的なフレームワークとなっており、サーバー、クライアント、コマンド ライン ツールなど、さらに多くのものをその上に構築できます。 Node は、リソースの共有を強制しないシングル スレッド、シングル プロセス システムとして開発されました。ネットワークに適したライブラリが含まれており、大規模な分散アプリケーションを構築するためのインフラストラクチャを提供します。その目標は、高速かつ高速に構築するためのサービスとしても知られています。スケーラブルなネットワーク アプリケーション。それ自体は非常にシンプルで、通信プロトコルを通じて多数のノードを組織し、大規模なネットワーク アプリケーションを構築する目的を達成するために拡張するのが非常に簡単です。

各 Node プロセスは、このネットワーク アプリケーションのノードを構成します、これはまさに Node の意味です

4. なぜ JavaScript が Node の実装言語になったのですか?

Node の実装言語として JavaScript を選択する主な理由は 3 つあります。

  • 高パフォーマンス
  • イベント駆動に準拠
  • 歴史的な荷物は不要
Ryan Dahl は、C、Lua、Haskell、Ruby などを次のように評価しました。ただし、C の開発の敷居は高く、Lua には多くの歴史的な荷物があり、Haskell はまだ十分ではないと感じており、Ruby の仮想マシンのパフォーマンスはあまり良くありません。結局のところ、Node の実装言語として JavaScript が選ばれたのです。

あなたも私と同じように、JavaScript には歴史的な荷物がないのではないかと思うかもしれません。はい、JavaScript はバックエンドに市場を持ったことはなく、その歴史的な重荷はゼロに相当します

5. Node の主な機能は何ですか?

主な機能は次のとおりです:

  • 非同期 I/O
  • イベントとコールバック関数
  • #シングルスレッド
  • #Node は、言語自体の機能を書き換えることなく、フロントエンド ブラウザー JavaScript の使い慣れたインターフェイスを保持します

6. Node のアプリケーション シナリオは何ですか?

Node の主なアプリケーション シナリオは次のとおりです:

CPU 集中型
  • CPU集中的なビジネス
  • 分散アプリケーション
  • ノードはイベント ループの処理能力を使用するため、リクエストごとにスレッドを開始する必要はありません。より多くのハードウェア リソースを効果的に整理することが容易になります。CPU スタック操作に重点を置いているビジネスの場合、主に V8 の徹底的なパフォーマンス最適化により、ノードのパフォーマンスも十分に効率的になります

7. CPU を大量に使用するものタイプのアプリケーションが Node にもたらす課題とその解決方法は何ですか?

CPU を集中的に使用するアプリケーションが Node にもたらす主な課題は、JavaScript がシングルスレッドであるため、長時間にわたって計算される場合 (大規模なループなど)、 CPU タイム スライスは解放されず、後続の I/O を開始できなくなります#通常の解決策:

#大規模なコンピューティング タスクを適切に調整して分解する

上記の解決策が解決できない場合でも、ノードは CPU を最大限に活用する 2 つの方法があります。
  • ノードは C/C 拡張機能を記述できます。

子プロセスのメソッドで、ノード プロセスの一部を計算用の常駐サービス プロセスとして使用し、プロセス間メッセージを使用して結果を転送し、I/O

  • ノード関連の詳細については、結果を転送し、計算を分離します。知識がある場合は、
  • nodejs チュートリアル
  • を参照してください。 !

以上が7 つの質問による Node.js の簡単な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjuejin.cnで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。