私はNode.jsを使用してWebアプリケーション用のアーキテクチャを設計しており、ギャラリーからクライアントにメディアサイズのファイルを送信できるようにする必要があります。ユーザーがギャラリーをブラウズすると、(ギャラリーアイテムごとに)できるだけ早くこれらのバイナリファイルが送信されます。ファイルは最大6Mbになる可能性がありますが、おそらく平均で約2Mbです。WebSocketとデータ転送のXHR
私のクライアントは、XHRの代わりにデータ転送にウェブソケットを使用することを主張しています。わかりやすく、双方向のコミュニケーションは必要ありません。
私はこのドメインでの経験が不足しており、私の推論では助けが必要です。 ここまでのポイントは、次のとおりです。
- WebSocketを使用すると、HTTPによって提供されるクライアント側のキャッシュがすべて破損します。ギャラリー内の同じアイテムを2回訪れた場合、ユーザーはコンテンツを再ダウンロードする必要があります。
- WebSocketメッセージは、プロキシキャッシュによって/ routedによって処理されません。それらは常に明示的なサーバーによって処理されなければなりません。
- CDNは、広範なWebキャッシングを提供し、HTTP要求をインターセプトするために構築されています。 WebSocketsは、CDNを活用することを制限します。
- 私は、Nodejsが並行WebSocket接続よりも数百/数千のXHRに高速に応答できると思います。
標準的なHTTPRequests経由で純粋なデータ転送を行うためにWebソケットを使用するかどうかの技術的な議論はありますか?誰もが私の点を無効にしたり明確にしたり、私の研究に役立つリンクを提供することはできますか?
私は、このリンクが非常に役に立った:私の頭の上オフhttps://www.mnot.net/cache_docs/#PROXY
これらのファイルはどのような種類のファイルで、正確にはどのようなものですか。ウェブスロットを使ってランダムにユーザーのブラウザにファイルを送るのは奇妙な要求のようです。 – adeneo
"クライアントは常に正しい"とは別に、ファイルをダウンロードするためにWebソケットを使用する理由はないようです。画像を表示したいだけで何も特別なことをしたくない場合は、XHRは必要ありません。 – Bergi
データファイルは、3Dアセットストアのバイナリエンコードジオメトリになります。 –