解析LUA與PHP在WEB應用的效能對比是本文要介紹的內容,這幾天用在WEB開發的LUA架構已經完成,架構中已包括資料庫操作和模板操作的功能,能夠很簡單方便的應用在WEB開發上。在此時我對這個LUA架構和PHP開發的WEB應用分別進行充分的壓力測試
伺服器配置:WEB伺服器一台,壓力測試伺服器一台,均為雙核+4G記憶體,CentOS 64位作業系統
網路環境:區域網路
軟體環境:yo2lua (50線程),Nginx+PHP-FPM (50進程)
應用程式均為串連MySQL資料庫查詢1行資料並輸出表中就只有一行資料)
壓力測試軟體:httperf+autobench
操作命令列:
- autobench
- --host1=192.168.200.251
- --port1=8001
- --host2=v2.54xing.com
- --port2=80
- --uri1=/
- --uri2=/a.php
- --quiet
- --low_rate=500
- --high_rate=5000
- --rate_step=100
- --num_call=1
- --num_conn=10000
- --timeout=10
- --file /tmp/result.tsv
從500並發起步,直到5000個並發,每次測試以10000個串連為基準取得平均值,
從測試結果中分析得出,PHP在並發數達到800的時候,效能出現嚴重的下降並且不穩定。而LUA則一直達到3200個並發時出現一次突發的效能下降,上升到3800個並發後效能下降一半並且不穩定,但依然能維持在2000個並發以上。
這份簡單的測試告訴我,LUA在WEB應用上,效能可以是PHP的4倍以上,並且LUA在3000個並發時,佔用的伺服器資源非常少,遠比PHP要低得多。
這個LUA的WEB開發架構定位就是簡單、高效能,也許一些複雜的功能無法實現,我認為這部分功能可以轉到PHP類的語言進行開發就可以,不必要把這個開發架構變得複雜龐大起來,不然就背離原來簡單、高效的宗旨了
LUA跟C的無縫對接,徹底征服俺了 _-!! ~ 剛用一台四核8G記憶體的WEB伺服器跑個壓力測試,穩定達到4500個並發/秒。
小結:解析LUA與PHP在WEB應用的效能對比的內容介紹完了,希望人、通過本文的學習能對你有所協助!