LAN 経由で 10 Mbps (Wi-Fi) から最大 10 Gbps (データセンターのサーバー) の速度で使用でき、Mac、Windows、iOS、および Android からアクセスできる速度テスト サーバーを作成しようとしています。 .
x秒間でできるだけ多くのランダムデータをダウンロードし、それに基づいて速度を計算することにより、速度をテストしたいと思います。
PHPとJavaScriptを使用してこれを行うにはどうすればよいですか? (別の言語ではるかに簡単な方法があれば、任意のサーバー側コードを使用できます。私は移植性の点で PHP を好みます。)
私が試した以前の解決策についてコメントを追加しました。より明確にするためにここに含めます。
以前にこれを行うために、他に 4 つの方法を試みました。
1) speedtest.net のミニ スピード テスト サーバー。
Problem - Requires Flash. Doesn't work with mobile devices.
2) WiseLoop JavaScript 帯域幅テスター
Problem - Not very accurate. More complicated than I need.
3) PHP でそれぞれ y MB のランダム データの x ファイルを生成し、ファイルを順番にダウンロードしてから、平均を計算します。
Problem - If I choose too small of a file then fast connections aren't as accurate. If I choose large files then slow connections take too long.
4) 1 つの大きなファイルを生成してダウンロードし、速度を計算します。
Problem - Takes too long on slow connections. Or has to be too small to effectively test fast connections.