2012-08-27 20 views
0

我試圖測試服務器的速度,並將其與第三方的服務器(包括Facebook,Tumblr和Google)進行比較。我需要建立一個至少有100個請求的報告,我決定用Python來完成這個任務。如何使用Python測試服務器速度

這個想法是,我上傳一個圖片到Facebook,然後重新下載它(因爲Facebook修改了我上傳的圖片),並將其上傳到其他第三方服務器以及我自己的。我爲每個服務器請求文件x次,Python將打印每次請求所花費的時間。

這裏是我的腳本:

from time import time 
from urllib import urlopen 

# vars 
url = raw_input("Please enter the URL you want to test: ") 

for i in range(0,100): 
    start_time = time() 
    pic = urlopen(url) 

    if pic.getcode() == 200: 
     delta_time = time() - start_time 
     print "%d" % (delta_time * 100) 
    else: 
     print "error" 
print "%d requests made. File size: %d B" % (i, len(pic.read())) 

我不是偉大的Python的,所以我不知道如果我這樣做的權利。

這是最好的方法嗎?

+2

如果代碼工作的方式應該,那麼,嚴格說來,問題是有點偏離主題在這裏;有一個名爲[codereview.se]的網站,您可以在其中發佈工作代碼以供審閱。 –

回答

1

有幾十種可用的HTTP performance testing tools。我建議你在創建自己的產品之前嘗試其中的一種。

+0

比如'ab'(Apache基準測試工具):http://httpd.apache.org/docs/2.2/programs/ab.html – dkamins

+0

我可以用它來測試第三方服務器嗎?我需要比較我的下載時間與Facebook,Tumblr,Google等的下載時間。 – Martin

+0

如果你去錘擊別人的服務器,他們可能會認爲它是DoS攻擊和黑名單,或採取法律行動。此外,你的服務器永遠不會比你的互聯網連接速度快。我懷疑谷歌和Facebook可以承擔比我們大多數人更大的「管道」。 –