PHP Framework MVC Benchmark 基準測試

來源:互聯網
上載者:User

標籤:router   master   個數   匯總   src   邏輯   健全   朋友   時間   

身邊有朋友在用yaf架構,討論的也聲音也比較多,今天沒事看鳥哥的部落格,看到一篇現在PHP主流的幾個架構效能對比,比較有意思,給大家分享一下!

Yaf是用PHP擴充的形式寫的一個PHP架構,也就是以C語言的編寫,效能上要比PHP代碼寫的架構要快一個數量級。在執行效率方面,這個架構很可能會是最高的,因為它的作者就是惠新宸

Case

測試 MVC 中的 Router -> Controller -> Viewer, 輸出 "Hello World" 簡單頁面,測試 MVC 在理想環境、簡單邏輯、架構空載下的效能指標。

3 項指標

1) 在 index.php 中使用 microtime() 和 memory_get_usage() 粗略取得執行時間,記憶體佔用情況
2) 使用 Facebook XHProf 擴充取得詳細的資源佔用情況,代碼執行的 function map
3) 並發測試

硬體環境:

CPU: Intel Core i5 750 (2.67GHz x4)
RAM: 4GB

軟體環境:

Debian 6.0.2 x86_64 (2.6.32-5-amd64)

apache 2.2.16
mpm-prefork
mod-php5

php 5.3.6
php-apc 3.1.3p1 (全域統一開啟APC支援)

測試的架構清單:

* zf: Zend Framework
Site: http://framework.zend.com
Ver: 1.11.7

* ci: CodeIgniter
Site: http://codeigniter.com/
Ver: 2.0.2

* yii: Yii Framework
Site: http://www.yiiframework.com/
Ver: 1.1.8

* yaf: Yet Another Framework in PHP Extension
Site: http://code.google.com/p/yafphp/
Ver: 2.0.1

* micromvc: MicroMVC
Site: http://www.micromvc.com/
Ver: 3.1.0

測試代碼用例:

https://github.com/eryx/labs/tree/master/php-framework-benchmark

測試結果:
1. 粗測: 記憶體佔用,回應時間
* zf: Zend Framework

* ci: CodeIgniter

* yii: Yii Framework

* yaf: Yet Another Framework in PHP Extension

* micromvc: MicroMVC

* all: 匯總對比
記憶體消耗

執行時間 (毫秒)

2. XHProf: 執行詳情

* zf: Zend Framework
執行摘要:

執行詳圖:

* ci: CodeIgniter
執行摘要:

執行詳圖:

* yii: Yii Framework
執行摘要:

執行詳圖:

* yaf: Yet Another Framework in PHP Extension
執行摘要:

執行詳圖:

* micromvc: MicroMVC
執行摘要:

執行詳圖:

* all: 匯總對比
函數調用量

3. 並發測試

ab -c 100 -n 30000

ab -c 200 -n 50000

看完之後第一反應,yaf的運行傳輸速度都快趕上PHP源碼了,感覺就像只是PHP換了一種方式運行,那這個架構裡邊的東西是否健全?因為還不太瞭解yaf,不敢評論太多!

PHP Framework MVC Benchmark 基準測試

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.