測試工具:ab(apacheBench) 硬體環境: Intel xeon cpu E5-2682 v4 2.50GHz 4 core 8GBytes 記憶體 軟體環境: ubuntu16 nginx 靜態文件 3Kbytes 26000次響應/秒(平均值)吞吐量:111Mbytes/秒(平均值)併發 ...
測試工具:ab(apacheBench)
硬體環境:
Intel xeon cpu E5-2682 v4 2.50GHz 4 core
8GBytes 記憶體
軟體環境:
ubuntu16
nginx
靜態文件
3Kbytes
26000次響應/秒(平均值)
吞吐量:111Mbytes/秒(平均值)
併發數:300
每次請求響應時間:10.8[ms](平均值)
------------------------------------------------
58Kbytes
20000次響應/秒(平均值)
吞吐量:1165Mbytes/秒(平均值)
併發數:300
每次請求響應時間:14.2[ms](平均值)
-------------------------------------------------------
beego
動態文件
3Kbytes
16000次響應/秒(平均值)
吞吐量:52Mbytes/秒(平均值)
併發數:330
每次請求響應時間:20.2[ms](平均值)
性能測試結果分析:
從以上結果可以看出,nginx對靜態文件的處理性能,不論是是吞吐量、併發量、單位請求處理時間上,都很強大。而且cpu占用只有50%。整個性能表現受到ab單進程的限制,並沒有完全發揮。
而beego的動態文件處理,性能也很強大。同樣的文件(3Kbytes),nginx作為靜態文件處理時,性能是每秒2.6W次響應。到了beego作為動態文件處理,依然可以達到每秒1.6萬次響應的性能,性能下降較小。相對於靜態文件處理,動態文件處理server需要經過更多流程才能完成輸出,所以都會出現性能下降。
beego在處理時,伺服器 cpu使用率達到了95%,而之前在筆記本上測試時,i3 cpu使用率也達到了93%,說明beego擁有良好的伸縮性。可以隨著硬體(CPU、記憶體)的加強,發揮出更強的性能。