一直在網上聽說web.py性能比較差,TPS才幾十個。這個道聽途說讓我一度放棄了web.py。
對比了一圈python web framework后,還是讓我對web.py的simple和它的設計理念念念不忘。
機器介紹
機型:ThinkPad R400 筆記本
CPU:Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz
Mem: 2G
系統:Ubuntu11.04 32位操作系統
備注:服務器上沒有python環境,所以只拿個人電腦做測試。
測試內容
輸出當前時間信息
1. <%= new Date() %>
2. time.ctime()
對比測試數據
服務器 |
并發數量 |
TPS |
平均響應時間 |
Tomcat6 + JDK6 |
50 |
6519.29 |
7.67MS |
CherryPy + Webpy |
25 |
1328.56 |
18.82MS |
CherryPy + Webpy |
30 |
Fail |
Fail |
Lighttpd + Flup(FCGI) + Webpy |
25 |
1535.98 |
16.28MS |
Lighttpd + Flup(FCGI) + Webpy |
50 |
1546.11 |
32.339MS |
測試感受
1. webpy自帶的CherryPy服務器性能也比傳說的強多了,只是難以支撐高并發的請求。也難怪,本來就是一個用于開發的服務器,也不能要求太多;
2. Flup(FCGI)下,TPS達到1500左右,完全能夠支撐一般應用的運營要求了;
3. 在專業服務器下,webpy fcgi tps自信能達到4-5k左右。足夠了;
4. 和Java相比,確實存在一定差距,但是在開發效率上,遠遠快于Java;
5. web.py成為我日后web開發首選;
6. 凡事不要道聽途說,需要眼見為實。
附上測試報告圖片:



