ホームページ  >  記事  >  ウェブフロントエンド  >  nodejs とはどういう意味ですか?

nodejs とはどういう意味ですか?

青灯夜游
青灯夜游オリジナル
2021-09-14 14:59:038797ブラウズ

nodejs は、Chrome V8 エンジンをベースとした JavaScript 実行環境で、スクリプト言語 JavaScript をサーバー言語として使用できる、サーバーサイドで JavaScript を実行できる開発プラットフォームです。ノードの利点: 超高同時実行機能、JavaScript 構文の使用など。

nodejs とはどういう意味ですか?

このチュートリアルの動作環境: Windows7 システム、nodejs バージョン 14.15.4、DELL G3 コンピューター。

Node.js は、2009 年 5 月にリリースされ、Ryan Dahl によって開発されました。これは、Chrome V8 エンジンに基づく JavaScript 実行環境です。イベント駆動型のノンブロッキング I/O モデルを使用して、JavaScript を許可します。 JavaScript を PHP、Python、Perl、Ruby などのサーバーサイド言語と同等のスクリプト言語にするサーバーサイド開発プラットフォーム。

Node.js は、いくつかの特別な使用例を最適化し、ブラウザ以外の環境で V8 の実行を向上させるための代替 API を提供します。V8 エンジンは、JavaScript を非常に高速に実行し、非常に優れたパフォーマンスを発揮します。Chrome JavaScript に基づいています。プラットフォーム実行時に確立されるこれを使用して、応答速度が速く、拡張が容易なネットワーク アプリケーションを簡単に構築できます。

Node.js は、次の理由から Google V8 JavaScript エンジンを使用します。

  • V8 は、BSD ライセンスに基づくオープン ソース ソフトウェアです。

  • # V8 は非常に高速です

  • V8 はネットワーク機能に焦点を当てており、HTTP、DNS、TCP などにおいてより成熟しています。

Node.js の利点?スクリプト言語 JavaScript がサーバー言語として使用できるのはなぜですか?

利点 1 Node.js は非常に高い同時実行機能を備えています

Node.js の最初の目標は、高性能サーバーを作成し、サーバー上でさまざまなアプリケーションを実行するためのシンプルな開発ツール。

Java、PHP、.net などの古典的なサーバーサイド言語と比較すると、Node.js は若くて元気な少年のようなもので、Java 言語はクライアントごとに新しいスレッドを作成し、クライアント接続ごとにスレッドが作成され、2MB のメモリが消費されます。つまり。理論的には、8GB サーバーには約 4,000 人のユーザーが同時に接続できますが、より多くのユーザーを高い同時接続でサポートするには、追加のサーバーを追加する必要があります。

Node.js は、クライアント接続ごとに新しいスレッドを作成せず、1 つのスレッドのみを使用します。

これは、Node が単一のスレッドに基づいているためです (リクエストを受信して​​応答するメイン スレッドは 1 つだけです)

これは遅くないですか?実際にはそうではありません。

Node.js がユーザー接続を受信すると、内部イベントがトリガーされます。事前定義された関数を通じてユーザーの行動に応答します。 Node.js のメイン スレッドはプログラムのプロセスを気にしません。実際には、Node のメイン スレッドがファイルにアクセスしてデータベースを読み取るのを支援する別の作業スレッドがあります。作業スレッドがファイル データまたはデータベース内のデータ。コールバック関数は、見つかったデータをクライアントに送信したり、一部の操作の接続を閉じたりするなど、実行のためにノードのメイン スレッドに返されます。 (これはノードのノンブロッキング I/O、イベント駆動型です)。

#添付されている以下は、私が描いた写真です(不適切なものがあれば許してください)

#にプロトタイプがあるはずですつまり、Node.js のメイン スレッドはリクエストの受信とリクエストへの応答でビジー状態であるため、複数のクライアントからのリクエストを継続的に受信でき、無駄に待つ必要がありません。ワーカー スレッドがデータを見つけると、イベント コールバック関数がトリガーされ、データが取得されたことをメイン スレッドに通知します。このとき、メイン スレッドはコールバック関数を実行してデータをクライアントに返します。

理論的には、8G メモリを搭載したサーバーは、同時に 30,000 ~ 40,000 人のユーザーの接続に対応できます。

ここで Node が威力を発揮します (シングルスレッド、ノンブロッキング IO、イベントドリブン)

利点 2 ノードは JavaScript 構文を使用します

#Node.JS

V8 エンジンは JavaScript に基づいています。つまり、JS の構文を知っていればバックエンド開発に使用できますが、Node は ECMA を公式に推奨しています。 Script6 (ES6) 構文。 Node は、JavaScript がブラウザー内でのみ実行できるという過去の状況を打破し、フロントエンドとバックエンドのプログラミング環境を統合し、開発コストを大幅に削減します。 (これはフロントエンド開発者にとって非常に親切です。JS でできることが増えれば増えるほど、フロントエンド開発が速くなります。)

メリット 3 Node.JS の登場により、フロントエンド開発が促進されます。エンドエンジニアリング感想 近年フロントエンドは急速に発展しており、Node.jsはかけがえのない役割を果たしています。

Node.js は実行環境であるだけでなく、まったく新しい JavaScript 言語でもあります。JS 構文の基本に対応し、いくつかの内部モジュールも追加します

例:

httpリクエストレスポンスを処理するモジュール

use using use ’ s ’ s ’ through using ’ s through through ’s ’ through through through ‐ ‐ to ‐ ‐ ‐ n , ‐ and ‐ to 1 to 1 、コマンド ラインを使用して、プロジェクトに依存するバッグをダウンロードできるようにしましょう。

::

## NPM Install jQuery

## NPM Install -G Webpack

# NPM Install-G Create-React-APP など モジュール構文の定義 ↓↓

const http = require('http')
 const  Jquery = require('jquery');

。フロントエンドエンジニアリングをモジュール化して迅速に開発し、コードの結合を減らし、保守性を大幅に向上させます。

Node.js は何に適していますか?

プログラミング関連の知識については、ProgrammingTeaching を参照してください。 !

以上がnodejs とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。