0

一緒にネットワーク化された 2 台のテスト コンピューターがあります。

1 つはギガビット イーサネット、もう 1 つは 10 メガビットです。

理論的には、2 つの間で転送されるデータは毎秒約 1 メガバイトに達するはずです。

現在、PHP スクリプトを使用して、fread を使用してあるホストから別のホストにデータを読み取っています。読み込みファイル、読み込み対象ファイルともにchmod 777です。

両方のコンピューターで wampserver が実行されており、両方に zonealarm と avast がインストールされて実行されています。Zonealarm は、両方のコンピューターをネットワークの信頼できる部分として認識するように構成されています。

time() 関数を使用して、スクリプトが他のコンポーネントのファイルを読み取るのにかかる時間を計算します。私が読んでいるファイルは10メガバイトです。10 秒強かかるはずです。それでも30秒くらいかかります。平均 300kbs。

では、セットアップのボトルネックはどこにあるのでしょうか?

1 つのコンプは Vista で、他は XP です。

4

3 に答える 3

3

ネットワーク速度が 10Mb/秒だからといって、アプリケーション層がそれを取得できるわけではありません。TCP/IP ヘッダー情報 (1500 バイト パケットあたり最大 64 バイト)、カーネルでのバッファ処理時間、LAN コントローラ チップとの間のバッファ転送に費やされた時間などがあります。

あなたが 300kbs を取得していると言ったとき、本当に 3mbs を意味していると思いますよね?

于 2009-05-22T22:34:26.953 に答える
2

私たちが取ることができる推測はたくさんありますが、プログラミングに関して問題が何であるかを尋ねていないので、これはおそらくサーバーフォールトに属しています。質問/回答にはあまり適していません。

于 2009-05-22T22:33:32.043 に答える
0

タスク マネージャー (ctrl+alt+delete、タスク マネージャー) を開き、2 番目のタブ (または 3 番目のタブ?) に切り替えて、テストを実行しながら CPU とネットワークの使用状況を監視します。CPU 使用率が 100% の場合、それがボトルネックである可能性があります。ネットワークの使用状況もチェックして、予期しないオーバーヘッドがないかどうかを確認してください。

それが私が始めるところです。

于 2009-05-22T22:34:03.523 に答える