安らかなWebサービスを介して利用できるようにしたい大量の(ギガバイト)jsonデータがあります。データの利用者は別のサービスになり、すべてサーバー上で発生します(したがって、ブラウザーは関与しません)。httpを介して転送できるデータ量に実際的な制限はありますか?httpタイムアウトが発生し始めますか、それともブラウザの機能ですか?
質問する
2734 次
1 に答える
4
HTTP 本文のサイズ制限はありません。Web ブラウザから巨大なファイルをダウンロードするようなものです。また、タイムアウトは HTTP が構築されているソケット接続の設定であるため、ブラウザ固有の機能ではありません。
ただし、非常に大きなjsonオブジェクトを転送する際に同じ問題に遭遇しました。考慮する必要があるのは、ネットワーク負荷、シリアライズ/デシリアライズ時間、およびメモリ コストです。プロセス全体が遅く (2 GB のデータ、イントラネット経由、JSON.NET を使用、2 ~ 3 分かかるいくつかの計算)、かなり大きなメモリが必要です。幸いなことに、これを 1 日 1 回行うだけで済みます。これはバックエンド プロセスです。だから私たちはそれにもっと注意を払いません。HTTP 接続に同期モードを使用し、タイムアウト例外を防ぐために長いタイムアウト値を設定するだけです (非同期が適切な選択かもしれません)。
したがって、ハードウェアとインフラストラクチャに依存すると思います。
于 2012-12-21T02:48:00.697 に答える