両方を使用したことがある人は、自分の経験を共有できますか?主な違いは何ですか?どちらが好きですか?ありがとうございました。
3 に答える
異なるsocket.ioとAPE:
- socket.ioはjavascript(node.js)でコーディングされていますが、APEはCでコーディングされています。貢献したい場合、これは大きな違いだと思います。プロジェクトが気に入ったからかもしれませんし、もっと機能が欲しいからかもしれません。多くの人にとって理解しやすいJavascriptをプログラムするので、Socket.ioを提供する方が簡単だと思います(Cも非常にクールな言語ですが、同意します)。
- socket.ioはAPEと比較してはるかに多くのブラウザー/トランスポートをサポートしていると思いますが、よくわかりません。Socket.io情報とAPEページからの情報:
APEサーバーは、HTTPプロトコルのPOSTメソッドとGETメソッドを実装するCometサーバーです。通常のWebサーバー(Apache、Lighttpd、Nginxなど)に置き換わるものではありませんが、APEサーバーはAJAXプッシュにのみ使用されます。
したがって、APEはsocket.ioよりも少ないトランスポートをサポートしていると思います。
Raynosが言ったように、これら2つの製品を比較するのは難しいので、両方を試してから、どちらが好きかを判断する必要があると思います。
同じSocket.io/APE:
- 両方ともJavascriptでコーディングして、サーバーと通信できます。すべてがJavascriptを介して公開されるため、socket.ioを使用する方が自由になると思います。
経験:
私はsocket.ioの経験しかなく、とても気に入っています。
Node.jsでの開発に時間を費やしてきましたが、APEがノードよりも優れているように見えるとは言えません。非常に人気があることから、Node.jsはおそらく開発者の選択であるように思われます。また、node.jsの方が用途が広いようです。
ノードは基本的に、HTTPまたはTCP/IPでフルになります。したがって、すべてのmimeタイプの処理、データバッファリング、応答ヘッダー、およびサーバー側のルーティングは、コードで行う必要があるすべてのことです。ノードはストリーミングも行います。この時点で、これが通常のajaxロングポーリングよりも問題が少ないと見なされるかどうかはわかりません。
調べてみると、APEは、独自に作成するNodeではなく、comet機能がすでに消費されている単なる古いプッシュサーバーであると人々が考えていることがわかりました。ただし、ノードを使用して物事を書き出す可能性を恐れないでください。非常に完全なドキュメントがあり、その方法は非常に簡単に習得できます。いくつかの深刻な機能が数分で書き出されました。
これもチェックしてください:http://groups.google.com/group/nodejs/browse_thread/thread/9d9b301479851b1f?pli = 1
node.jsで少し遊んだり、socket.ioを試したりしましたが、最終的にはAPEで大きなプロジェクトを行いました。
いつものように、何を達成したいのかという問題があると思います。サーバー部分のみを比較する:node.jsを使用すると、それ自体では何も実行しないマシンを取得できます。自分で作成する(またはライブラリを使用する)必要があります。APEを使用すると、チャネルと接続の処理がすでに組み込まれています(コンパイル済み)。 C)。それでも、JSを使用して独自のロジックの一部を構築する必要があります。または、例を使用してください。
クライアント側では、socket.ioはクライアントフレームワークに3つのコマンドを提供します-そしてAPEには接続を処理するAPE_JSFがあります(これはチャネルに関してsocket.ioよりも多くの機能をもたらします)
個人的には、初心者向けのドキュメントが不足しているにもかかわらず、私はAPEを好みます。ただし、APEはファイル/画像を配信しないことに注意してください。完全なWebサーバーではありませんが、最大10,000人の同時ユーザーを処理できるリアルタイムプッシュ用に最適化されています。