2009-06-30 29 views
2

XMLHttpRequestsは、更新頻度が30秒以上のコンテンツに最適です。同じ記事では、より高速な周波数を必要とするウェブアプリケーションはソケットを使用すべきだと述べています。私はこれを言及する記事/本を見つけることができません(誰かがこれを議論する記事へのリンクを投稿できるなら、私はそれを感謝するでしょう)。 XMLHttpRequestとソケットに関するあなたの経験は上記の主張をサポートしているのですか?ブラウザとサーバの間の他のタイプの接続を考慮する必要がありますか?XMLHttpRequestとソケットの違いと他のアプローチとの比較

答えて

3

Javascriptには、実際のソケット通信を行う方法がありません。 Javascriptのみにロックされている場合(SWFヘルパー、ActiveX、その他の技術なし)、XMLHttpRequestが最適です。

XMLHttpRequestは、要求を解析して形成し、結果を解析するためのオーバーヘッドが原因で、(少なくとも理論上は)より頻繁な更新にはあまり適していません。理論的には、ソケット接続は、すべての要求生成を経ずにサーバーにパイプを戻すことになります。

ソケットを使用することの欠点(Javascriptが直接サポートしていないことに加えて)は、Socket接続経由で返されるデータにカスタムシリアル化形式を使用すると、書き込むコードだけが結果を消費する可能性があります(あなたがあなたのシリアライズフォーマットを公表しない限り)。それはあなたのための問題ではないかもしれないが、いくつかのために、それは致命的だ...

ここソケットの小さなデモは、SWFヘルパーとJavaScriptである:

SocketJS

2

答えに多くがあります更新頻度よりもComet(これはより多くの記事につながるキーワードです)を使用しているので、同時接続ユーザー数も重要です。サーバー接続を使い切ってしまい、拡張できない可能性があります。最新のWebサーバーはより多くの接続を処理する方が優れていますが、これを自分の環境でテストする必要があります。

私にとっては、30秒でさえあまりにも頻繁にAJAXを使用しています。私の限界はおそらく1分ぐらいです。

-1

この記事は日付になっているはずです。現代のブラウザでは、1秒という速さで要求を処理することはありません。あなたの検索でGoogleがどれほど速く推測できるかを見てみましょう。単純なXMLHttpRequest呼び出しです。フラッシュなし。 ActiveXはありません。

関連する問題