0

プロジェクトで Socket.io を使用しており、XHR ポーリングを使用しますが、同時接続数は 6 に制限されています。したがって、5 つのタブを開くと、Socket.io がハングし始めます。

ポーリング時間を 0 秒 (デフォルトは 20 秒) に設定すると、制限はアプリケーションに影響しなくなりますが、Firebug は毎秒リクエストがあることを示します。

0 秒の制限を使用すると、サーバーとユーザーにどのような影響がありますか?

4

1 に答える 1

3

期間を設定すると、XHR ロングポーリングが使用されます。この期間は、送信するデータがない場合に HTTP 要求を開いたままにしておく時間をサーバーに指示します。サーバーに送信するデータがある場合、データは即座に送信され、接続が閉じられます。その後、クライアントは新しい接続を作成し、サイクルが続きます。

期間をゼロに設定すると、ショート ポーリングを使用するようサーバーに効果的に伝えます。これにより、クライアントがサーバーにデータを要求すると、サーバーは空の応答またはデータで即座に応答します。

ショート ポーリングがクライアントとサーバーに与える影響は、ロング ポーリングのようにクライアントが即座にメッセージを受信しないことですが、HTTP 要求が開いたままにならないため、消費するリソースが少なくなります。これは、接続がすぐに終了するため、おそらく同時接続制限に達しないことも意味します。

于 2013-09-08T19:50:10.467 に答える