如何测试最快的镜像

如何测试最快的镜像

我目前正在使用它xargs -n 1 -P 24 curl -s -w '%%{url_effective}\t%{time_total}\n' -o /dev/null < mirrors.txt来测试每个镜像的响应时间。我希望能够在curl第一个/最快的实例完成后终止所有实例。这可能不是最好的方法,所以我愿意接受其他能达到我想要的结果的解决方案。

谢谢!

答案1

找到快速镜像(以及您想要的任意数量的镜像)的最佳方法是使用netselect.netselect将根据其分数列出最快的镜像。假设您的文本文件由空格或换行符分隔,该命令sudo netselect -vv -s 100 $(cat mirrors.txt)将按速度对镜像进行排序(越低越好)并以毫秒为单位显示响应时间。
以下是我自己的mirrors.txt 文件的命令输出(按随机顺序排列):

Running netselect to choose 100 out of 3 addresses.     
..........................
http://deb.debian.org/debian/           10 ms   6 hops   50% ok ( 3/ 6) [   33]
http://mirror.timkevin.us/debian/       70 ms   9 hops  100% ok (10/10) [  133]
http://mirror.i3d.net/debian/           99 ms   9 hops  100% ok (10/10) [  188]
   33 http://deb.debian.org/debian/
  133 http://mirror.timkevin.us/debian/
  188 http://mirror.i3d.net/debian/
Only found  3 hosts out of 100 requested.

最快的镜像得分为 33。响应时间仅 10 毫秒。毫秒和分数显示在这些行中:

http://deb.debian.org/debian/           milliseconds-->10 ms<--   6 hops   50% ok ( 3/ 6) [   score-->33]
http://mirror.timkevin.us/debian/       milliseconds-->70 ms<--   9 hops  100% ok (10/10) [  score-->133]
http://mirror.i3d.net/debian/           milliseconds-->99 ms<--   9 hops  100% ok (10/10) [  score-->188]

使用的好处是它的工作速度比andnetselect更快,而且您不需要麻烦,因为您只需将 的输出作为命令的最后一个参数即可。该命令适用于任何 URL。pingtraceroutexargsmirrors.txtnetselect

相关内容