2

可能重复:
测量服务器的 ping 延迟 - Python

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 服务器。

如果您能给我一个样品或任何想法,我将不胜感激,谢谢。:)

4

3 回答 3

1

你为什么要自己做这件事?通常应用程序服务器在负载均衡器后面运行,希望将您的请求重定向到负载最少的机器......在这种情况下的负载平衡 - 由您自己完成 - 在地理分布的应用程序服务器设置中可能有意义,但在这里没有Stackoverflow 服务器。所以你的用例是?

也可以看看

测量服务器的 ping 延迟 - Python

于 2012-08-12T10:17:08.987 回答
0

我想用谷歌搜索半天,像这样?

url = ""

f = urllib.urlopen(url)
start = time.time()
page = f.read()
end = time.time()
f.close()

有更好的方法吗?

于 2012-08-12T10:27:08.840 回答
0

您可以使用popen执行ping命令:

例如,让我们采取三个nameserversstackoverflowping 他们。最快的将是平均时间最短的

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)

输出:

lowest average time is from 69.59.196.217
于 2012-08-12T10:34:13.643 回答