我正在尝试创建一个速度测试服务器,可以在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.