日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
對(duì)比Python和Go語(yǔ)言的每秒請(qǐng)求數(shù)

我使用Python工作已經(jīng)有幾年了,最近開始了一個(gè)關(guān)于GO的調(diào)查,主要看作是一個(gè)緩解瓶頸的實(shí)驗(yàn),還沒有大規(guī)模web服務(wù)器部署。

十載的中站網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷型網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整中站建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“中站網(wǎng)站設(shè)計(jì)”,“中站網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

我用不同語(yǔ)言寫了一個(gè)簡(jiǎn)單的REST服務(wù),使用ab工具檢測(cè)響應(yīng)速度。

Python

server.py

 
 
 
  1. from bottle import route, run
  2. @route('/')
  3. def home():
  4.     article = {'name': 'A Royal Baby', 'body':'A slow news week'}
  5.     return article
  6. def main():
  7.     run(host='localhost', port=8081)
  8. if __name__ == '__main__':
  9.     main()

Go

server.go

 
 
 
  1. package main
  2. import (
  3.     "encoding/json"
  4.     "fmt"
  5.     "github.com/emicklei/go-restful"
  6.     "io"
  7.     "net/http"
  8. )
  9. func main() {
  10.     ws := new(restful.WebService)
  11.     ws.Route(ws.GET("/").To(hello))
  12.     restful.Add(ws)
  13.     fmt.Print("Server starting on port 8080\n")
  14.      http.ListenAndServe(":8080", nil)
  15. }
  16. func hello(req *restful.Request, resp *restful.Response) {
  17.     article := Article{"A Royal Baby", "A slow news week"}
  18.     b, _ := json.Marshal(article)
  19.     io.WriteString(resp, string(b))
  20. }
  21. type Article struct {
  22.     Name string
  23.     Body string
  24. }

Go語(yǔ)言的版本明顯比Python版的更詳細(xì),但我認(rèn)為它仍然非常言簡(jiǎn)意賅。Python服務(wù)器使用bottle框架,指定的article字典作為響應(yīng)自動(dòng)序列化返回。Go服務(wù)器使用go-restful包,這個(gè)包使得在Go中很容易構(gòu)建RESTful API。

測(cè)試基準(zhǔn)是在Macbook Pro上,CPU i7 2.4Ghz,16GB RAM。

使用下附命令:

ab -q -c 50 -n 1000 http://127.0.0.1:8080/ | grep "Requests per second"

結(jié)果

5次測(cè)試,1000次請(qǐng)求的平均每秒鐘完成請(qǐng)求次數(shù)

Run Python Go
1 1310.58 13568.34
2 1332.82 13092.95
3 1331.54 13479.45
4 1306.09 13271.58
5 1274.49 13873.09

Go平均完成13457次請(qǐng)求/秒,Python完成1311次請(qǐng)求/秒

在本次測(cè)試中,Go在完成JSON響應(yīng)方面比Python快10.26倍。

我知道這些腳本非常的簡(jiǎn)單,而且缺少實(shí)際應(yīng)用中的邏輯——例如數(shù)據(jù)庫(kù)連接。也許有比ab更準(zhǔn)確的測(cè)試方法,但我認(rèn)為這些結(jié)果足以給你一個(gè)嘗試Go的理由。以我目前的經(jīng)驗(yàn),從Python到編譯型語(yǔ)言有很多樂(lè)趣。

做過(guò)Python/Go基準(zhǔn)測(cè)試的想一起分享么?

英文原文:Python vs Go - Requests per Second

譯文鏈接:http://www.oschina.net/translate/python-vs-go-requests-per-second


文章名稱:對(duì)比Python和Go語(yǔ)言的每秒請(qǐng)求數(shù)
文章起源:http://www.dlmjj.cn/article/dhhseei.html