Node.jsが非常に人気が高まっていることに気づき、その中で小規模なプロジェクトを行っている人々のインスタンスをいくつか目にしました。
また、Node.jsが何ができるかを理解するために長所と短所のリストも調べましたが、それがPHP、Perl、Ruby on Rails。
具体的には、Node.jsと現在の選択肢の違いは何ですか?なぜですか?
Node.jsを既存のサーバー側フレームワークと異なるものにする2つの重要な点があります。非同期イベントとプログラミング言語としてのJavaScript。
既存のサーバー側フレームワークのほとんどは同期アーキテクチャを使用していますが、Node.jsはasynchronousアーキテクチャを使用しており、JavaScriptで適切に処理できます。つまり、サーバーはイベントに反応し、イベント(メッセージ)を送信します。データベース。このプログラミングスタイルは同期スタイルとは非常に異なり、他の言語では使いにくい場合があります。 Node.jsは、非同期IOを使用した非同期スタイルを採用しており、適切にスケーリングできます。
JavaScriptは、Webアプリケーションがクライアントで使用しているプログラミング言語です。サーバー側で同じ言語を使用することは、開発者がクライアントとサーバーの両方でJavaScriptの知識を適用し、必要に応じて同じ関数を使用できることを意味します。
私はプレゼンテーション Ryan DahlによるNode.jsの紹介 をお勧めします。ここでは、Node.jsのイベント駆動型アーキテクチャについて詳しく説明しています。
イベント駆動 であるため、その違い。これにより、サーバーは非常にスケーラブルになります。
一言で言えば;
スレッドモデル
イベントモデル
私は、その人気はJavaScriptの使用によるものだという印象を受けていました。多くのWeb開発者がJavaScriptを知っているため、同じ言語を使用してサーバー側コードを開発できることがセールスポイントです。これには、私が考えることができるいくつかの利点があります。