5

私は PHP をより良いものに置き換えようとしています (誰もが PHP は悪だと言っているようですよね?)、そしてサーバーサイド JavaScript を検討しています。

node.js は非常に人気があるようですが、非同期のものに夢中になるのではないかと心配しています。node の下に通常の (同期) コードを書くことは可能ですか?

私のウィッシュリスト: Web およびコマンドライン スクリプト、優れたパフォーマンス ( The Computer Language
Benchmarks Game
では、V8 は PHP よりも桁違いに速いようです)、できればいつか放棄されないように、一部の企業またはコミュニティによって開発されたもの、適切なモジュール ライブラリを備えたユーザー コミュニティ。

RhinoはJavaで実行されるため、Rhinoに基づくさまざまなフレームワークは考慮していません.Javaに興味がなく、Javaのメモリフットプリントを認識しており、JavaScriptをJavaにコンパイルするという全体的な考えは私には意味がありません.

グーグルで時間をかけて、Myna、Meteor、GromJS、APE、GLUEscript、v8cgi、silkjs、wakanda、GPSEE、sorrowjs、ejscript、Persevere、PhantomJS などの多数のプロジェクトを見つけました。

誰かがそれらの経験がありますか? どんな推薦も大歓迎です。

4

5 に答える 5

6

あなたが私に尋ねるなら、Node.JSは行く方法です。同期コードを記述できますが、それはコマンド ライン スクリプトでのみ行います。Web サーバーを作成するときは、非同期ルートを使用する必要があります。そうしないと、JavaScript がシングル スレッドであり、すべてが停止するため、実行されません。

Node.js が非常に高速な理由は、非同期 IO によるものです。

コールバックとイベンティングに慣れ、しばらくすると元に戻りたくなくなります。

Node.js は、Chrome の JavaScript ランタイム上に構築されたプラットフォームであり、高速でスケーラブルなネットワーク アプリケーションを簡単に構築できます。Node.js はイベント ドリブンのノンブロッキング I/O モデルを使用しているため、軽量で効率的であり、分散デバイス間で実行されるデータ集約型のリアルタイム アプリケーションに最適です。

于 2012-07-14T21:45:05.230 に答える
5

流星。Node.js の上に構築され、非常に急速に成長しています。

Meteor では、サーバー コードは、Node.js に典型的な非同期コールバック スタイルではなく、リクエストごとに 1 つのスレッドで実行されます。線形実行モデルは、Meteor アプリケーションの典型的なサーバー コードにより適していることがわかりました。

更新1年後-なぜMeteorなのか

于 2013-03-12T01:17:49.260 に答える
4

サーバーサイド JavaScript ソリューションの比較を見たことがありますか?

Node.jsが人気です。PHP の速度については、HipHopを見たことがありますか? コードを JavaScript で書き直しても、おそらく php よりもパフォーマンスが大幅に向上することはありません。

于 2012-07-14T21:48:44.257 に答える
4

Nodejs は、多くの面で非常に優れたオプションです。

しかし、あなたはその非同期の性質について心配していると言います。

これについて2点。

  1. 非同期について心配する必要はなく、PHP のように上から下にアプリケーションを書き続けることができます。それは、「ブロッキング IO」を実行していない場合です。

  2. データベースの読み取りやファイルシステムへのアクセスなどの「ブロッキング IO」を実行している場合は、非同期に対処する必要があります。幸いなことに、コーディングの慣行をあまり変更せずにこれを行うための良い方法があります。

于 2012-07-15T02:42:24.777 に答える
3

あなたが見つけた「多数のプロジェクト」のリストを提供してくれてありがとう。私たちは現在、1996 年以来、サーバー側の JavaScript 実装を提供する Microsoft ASP 3.0 (「Classic ASP」、IIS に付属) を使用しています。これは、高速で成熟しており、COM テクノロジにより非常に拡張可能です。オープンソースに慣れていない場合は、一見の価値があります。私たちのオープン ソース戦略では、SilkJS を詳しく見ていきます。

于 2012-07-27T07:40:23.490 に答える