#このチュートリアルの動作環境: Windows7 システム、nodejs バージョン 12.19.0、DELL G3 コンピューター。 Nodejs は 2009 年 5 月に誕生しました。偉大なる神 Ryan Dahl によって開発された Chrome V8 エンジンをベースにした JavaScript 実行環境です。 ライアンの仕事は、C でサーバーを記述することです。その後、彼は、高性能サーバーは「イベント駆動型のノンブロッキング I/O」モデルを満たす必要があるという経験をまとめました。 C は開発がより面倒だったので、Ryan は迅速な開発のためのより高水準の言語を見つけたいと考えました。 Nodejs の誕生には 2 つのポイントが貢献したと言えます。Nodejs は 2009 年 5 月に誕生しました。これは、偉大な神 Ryan Dahl によって開発された Chrome V8 エンジンに基づく JavaScript 実行環境です。イベント駆動型のノンブロッキング I/O モデルを使用して JavaScript を可能にします。サーバー側で開発プラットフォームを実行します。
node の起源と背景
Ryan Dahl の経験はかなり奇妙です。彼は専門的な背景を持つ開発者ではありません。2004 年、彼はまだ Rocher で働いていました。 , ニューヨーク。私はスタート大学の数学学科で博士号取得の勉強をしていました。その間、いくつかのフラクタル、分類、p 進解析を勉強しました。これらはオープンソースやプログラミングとは何の関係もありませんでした。2006 年、彼は「世界は広い、見てみたい」という考えを持った読書のアイデアで、彼は学校を中退する決意をし、仕事を遂行するためにクラウドの研究を始めました。スノーボード会社の Web サイトを Rails で開発したのが、彼の正式なプログラミング キャリアの始まりでした (その後のイベントの展開がわかります。私自身...)2008 年まで Chrome がリリースされ、V8 JavaScript が使用されていました。通訳も同時にリリースされました。これは優れた強力な動作環境です。 V8 がリリースされた後、ライアン ダールはそれを分析し始めました。魅力的でクリーンに見えましたが、すぐにライアン ダールはこう思いました。JavaScript はシングルスレッドですでにノンブロッキングですが、Web ブラウザーではノンブロッキングであるのは少し皮肉ですリクエストは、AJAX リクエストとイベントを使用するときに実装されています。 Ryan Dahl は、JavaScript と非同期 IO、いくつかの HTTP サーバー イベントを組み合わせると、非常に素晴らしいものになると信じています。そのため、次の段階ではこの取り組みを行っています。#2009 年 2 月、新しいアイデアに基づいて、彼はプロジェクトのコードの最初の行を提出し、プロジェクトの名前は最終的に「ノード」と名付けられました
Ryan Dahl 氏がベルリンで開催された JSConf EU カンファレンスで Node.js について講演し、Node.js は徐々に世界で普及していきました。
そこで、Ryan Dahl は 2010 年に Joyent (シリコン バレーの新興企業) に入社し、Node.js プロジェクトの開発をフルタイムで担当しました。現在、Node.js プロジェクトは個人プロジェクトから会社組織のプロジェクトへという第 2 ステージに入りました。
彼のノードに対するアイデアは、すべてをノンブロッキングな方法で実行することです。これにより、プログラミング プロセスで遭遇する多くの問題を解決できます。たとえば、スレッド処理をオフにする必要を完全に排除し、プロセスのみを使用することができます。抽象化とシーケンス、化学コミュニケーションによって私たちの仕事は完了します。そしてその過程で、完全に非同期のメソッドが非常に多くのリクエストを処理できることがわかり、彼はこのメソッドが非常に優れていると確信しました (Ryan Dahl が Go に出会ってからずっと後、彼は当初のアイデアを変更しました。Go には適切なグリーン スレッドがあり、簡単に実行できるためです)。 Go とオペレーティング システムの間のインターフェイスは両方ともグリーン スレッドであり、ノンブロッキング I/O であるため、抽象化を使用します。ただし、ユーザーに提供するインターフェイスはブロックされており、非常に使いやすいです。たとえば、イベント A を処理し、イベントを待機します。応答またはエラー; イベント B を処理し、応答を待ちます。エラーが発生した場合、何をすべきか、何をすべきかは明らかですが、Node では、別の関数呼び出しにジャンプする必要があるため、これはより困難になります。操作、ノード コミュニティの発展により、この処理方法に対する優れた解決策が作成されましたが、本質は Go とは異なります)
[推奨学習: "
nodejs チュートリアル》]
以上がNodejs はいつ誕生しましたか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。