There are a few servers such as
http://server1.stackoverflow.com
http://server2.stackoverflow.com
http://server3.stackoverflow.com
http://server4.stackoverflow.com
我想知道目前哪些链接的响应时间最短。我该怎么办?
我正在考虑:timeit或ping服务器。
如果您能给我一个样品或任何想法,我将不胜感激,谢谢。 :)
答案 0 :(得分:1)
你为什么要自己这样做?通常应用程序服务器在负载均衡器后面运行,希望能够以最少的负载将您的请求重定向到机器...在此上下文中的负载均衡 - 由您自己完成 - 在地理位置分散的应用服务器设置中可能有意义但在此处不具备Stackoverflow服务器。你的用例是什么?
另见
答案 1 :(得分:0)
我试图谷歌它半天,这样的事情?
url = ""
f = urllib.urlopen(url)
start = time.time()
page = f.read()
end = time.time()
f.close()
更好的方法吗?
答案 2 :(得分:0)
您可以使用popen
执行ping
命令:
例如,让我们取nameservers
的{{1}}并对其进行ping操作。
最快的一个是平均时间最短的那个
stackoverflow
<强>输出:强>
import os
lis3=['64.34.119.33','64.34.119.34','69.59.196.217'] #nameservers of SO
lis2=[]
for x in lis3:
strs=os.popen("ping "+x).read()
#print strs
time=strs[strs.rfind(' ')+1:strs.rfind('ms')]
lis2.append(int(time))
minn=lis3[lis2.index(min(lis2))]
print 'lowest average time is from {0}'.format(minn)