0

つまり、最初のステップでウェブサーバー内のいくつかの画像のサイズを取得するだけでよいアプリがあります。そのためには、fsockopen を使用しています。content-lengthヘッダーを読み取った後、ソケットを閉じます。

質問はばかげているかもしれませんが、tcp プロトコルとインターネットを介したデータ転送プロセス全体、およびこのソケットを介してファイルがどのように php アプリに到達するかについて、私はほとんどまたはまったく知りません。ファイル全体を読み取る前にソケットを閉じるか、とにかく全体がローカルマシンに転送されますか? イメージをホストするサーバーはどうですか? ソケットが閉じられていることを認識しており、データの送信を停止していますか?

4

2 に答える 2

3

それはたくさんのものに依存します。イメージが 10 テラバイトの場合、はい。絶対。それが100kなら、おそらくそうではありません。

それはすべてバッファに関係しています-バッファはいたるところにあります。各コンピューターのバッファー、それらの間のネットワーク内の各デバイスのバッファー..遅延と利用可能な帯域幅。

しかし、基本的にファイルが大きい場合は、はい、帯域幅を節約しています. 小さい場合は、そうではありません。正確に把握することは難しく、関連する変数の数が多くなります。また、エンド ツー エンド システム全体を制御しない限り、損益分岐点は時間の経過とともに変化する可能性があります (それでも、制御するのに苦労する多くのことが答えに影響を与えます)。

于 2013-08-24T23:10:49.310 に答える
1

基本的にはい、十分な大きさのファイルの場合はそうですが、完全な GET リクエストではなく HTTP HEAD リクエストを使用すると、さらに多くの節約になります。次に、すべてのファイルを保存します。

于 2013-08-25T00:26:36.120 に答える