PHP 5.5 / PHP5.6 / PHP-NG 和 HHVM 哪個效能更好?
| 2015-04-08 09:40
摘要:在一個基於Vagrant的本地環境中,可能是某個錯誤的原因,導致HHVM測試結果很差;在HHVM夥伴們協助下,該原因仍在研究中!然而,在DigitalOcean的一個4GB虛擬機器中,HHVM甚至蓋過了最新版的PHP-NG的風頭!
結論:它們反映出HHVM的功效更佳(在JIT熱啟動後),雖然出於某些原因,我們不能在所有裝備中獲取這些結果。
如果你記得我們在幾個月前寫過一篇文章,那時WordPress 3.9表明是完全支援HHVM的,當時是那麼令我們歡欣鼓舞。最初的基準測試結果顯示,HHVM要比驅動著當前所有PHP構建的Zend引擎高階得多。後來,問題就出來了:
- HHVM只能以單個使用者執行,這意味著(在共享環境中)安全性差了
- HHVM在崩潰後不會自動重啟,而不幸的是,它至今仍然經常發生
- HHVM在啟動時使用大量記憶體,雖然,它和同規模的PHP-FPM比較,單個請求的記憶體使用量更低
很顯然,你不得不根據你的(或者更確切地說是你的站點)的需求採取折中方案,然而這值得嗎?切換到HHVM後,你期望獲得多少效能改善呢?
在Kinsta,我們真的想要測試所有新技術,並通常會最佳化這一切來為我們的客戶提供最佳的環境。今天,我最終花了點時間來配置測試環境並進行了一些測試來對比兩個不同的構建,一個是全新出爐的WordPress安裝,另外一個則新增了大量內容的WooCommerce!為了計量指令碼的執行時間,我只是簡單地新增了
<?php timer_stop(1); ?>
這一行到footer.php的/body標記前。
這裡是配置環境的詳情:
- DigitalOcean 4GB 雨滴容器 (2 CPU核心, 4GB RAM)
- Ubuntu 14.04, MariaDB10
- 測試站點: 已匯入演示內容的Munditia主題,WooCommerce 2.1.12 & WordPress 3.9.1
- PHP 5.5.9, PHP 5.5.15, PHP 5.6.0 RC2, PHP-NG (20140718-git-6cc487d)和HHVM 3.2.0 (版本是PHP 5.6.99-hhvm)
沒有進一步大費周章,這些就是我的測試結果,數值越低越好,以秒為單位:
DigitalOcean 4GB 雨滴容器
單位是秒,執行10次,越低越好
看起來似乎PHP-NG在它首次執行後就獲得了峰值效能!HHVM需要更多幾次過載,但是它們的效能貌似差不多!我等不及PHP-NG合併到開發主幹了!:)
一分鐘命中數,越高越好。
PHP 5.5.15禁用OpCache
- 執行: 236 hits
- 可用性: 100.00 %
- 消耗時間: 59.03 secs
- 傳輸的資料: 2.40 MB
- 回應時間: 2.47 secs
- 執行率: 4.00 trans/sec
- 吞吐量: 0.04 MB/sec
- 併發數: 9.87
- 成功的執行: 236
- 失敗的執行: 0
- 最長執行: 4.44
- 最短執行: 0.48
PHP 5.5.15啟用OpCache
- 執行: 441 hits
- 可用性: 100.00 %
- 消耗時間: 59.55 secs
- 傳輸的資料: 4.48 MB
- 回應時間: 1.34 secs
- 執行率: 7.41 trans/sec
- 吞吐量: 0.08 MB/sec
- 併發數: 9.91
- 成功的執行: 441
- 失敗的執行: 0
- 最長執行: 2.19
- 最短執行: 0.64
PHP 5.6 RC2禁用OpCache
- 執行: 207 hits
- 可用性: 100.00 %
- 消耗時間: 59.87 secs
- 傳輸的資料: 2.10 MB
- 回應時間: 2.80 secs
- 執行率: 3.46 trans/sec
- 吞吐量: 0.04 MB/sec
- 併發數: 9.68
- 成功的執行: 207
- 失敗的執行: 0
- 最長執行: 3.65
- 最短執行: 0.54
PHP 5.6 RC2啟用OpCache
- 執行: 412 hits
- 可用性: 100.00 %
- 消耗時間: 59.03 secs
- 傳輸的資料: 4.18 MB
- 回應時間: 1.42 secs
- 執行率: 6.98 trans/sec
- 吞吐量: 0.07 MB/sec
- 併發數: 9.88
- 成功的執行: 412
- 失敗的執行: 0
- 最長執行: 1.93
- 最短執行: 0.34
HHVM 3.2.0(版本是PHP 5.6.99-hhvm)
- 執行: 955 hits
- 可用性: 100.00 %
- 消耗時間: 59.69 secs
- 傳輸的資料: 9.18 MB
- 回應時間: 0.62 secs
- 執行率: 16.00 trans/sec
- 吞吐量: 0.15 MB/sec
- 併發數: 9.94
- 成功的執行: 955
- 失敗的執行: 0
- 最長執行: 0.85
- 最短執行: 0.23
PHP-NG啟用OpCache(構建: Jul 29 2014)
- 執行: 849 hits
- 可用性: 100.00 %
- 消耗時間: 59.88 secs
- 傳輸的資料: 8.63 MB
- 回應時間: 0.70 secs
- 執行率: 14.18 trans/sec
- 吞吐量: 0.14 MB/sec
- 併發數: 9.94
- 成功的執行: 849
- 失敗的執行: 0
- 最長執行: 1.06
- 最短執行: 0.13
注意:這裡節略了前一次的測試結果(有誤),如感興趣請訪問原文檢視。
via: https://kinsta.com/blog/real-world-wordpress-benchmarks-with-php5-5-php5-6-php-ng-and-hhvm/
作者:Mark Gavalda 譯者:GOLinux 校對:wxy
相關文章
- PHP7和HHVM的效能之爭PHP
- HHVM 是如何提升 PHP 效能的?PHP
- Java和Python哪個更好?JavaPython
- php5.6 安裝imagemagick和imagickPHP
- java和python哪個更好用?(五)JavaPython
- eBPF 和 WebAssembly:哪個雲原生VM更好?eBPFWeb
- Python 和 C 語言學哪個更好?Python
- 住宅代理和資料中心代理哪個更好?
- PHP 7.0即將釋出,效能接近Facebook的HHVMPHP
- 學程式設計,Python和Java哪個更好?程式設計PythonJava
- Python和前端開發哪個更好入門?Python前端
- 2024年,Rust和Go學哪個更好?RustGo
- PHP 7 vs HHVM 比較PHP
- 小米5和小米Note對比評測:哪個更好?
- php5.6 升級至7.2.7PHP
- 5個效能測試工具哪個更好用?對比結果新鮮出爐!
- Linux系統和Windows系統對比?哪個更好?LinuxWindows
- PHP5.6中php-fpm的配置、啟動、關閉和重啟PHP
- centos下升級php5.3到php5.6CentOSPHP
- 京東面試官讓你談談 zookeeper 和 eureka 哪個更好使?面試
- PHP 5.6,7.0,7.1,7.2 和 HHVM 執行效率比較PHP
- Django vs SQLAlchemy:哪個 Python ORM 更好DjangoSQLPythonORM
- [技術討論]Uml工具哪個更好
- php5.6原始碼安裝過程PHP原始碼
- Mac虛擬機器Parallels Desktop和VirtualBox哪個更好用?Mac虛擬機Parallel
- 0基礎小白學程式設計,Java和Python哪個更好?程式設計JavaPython
- Abaqus與Ansys的區別和不同, 兩種軟體哪個更好?
- 哪個CRM更好用?CRM系統推薦
- Python和PHP初學者先學哪個好?PythonPHP
- github-abertschi/graalphp:一個基於GraalVM的高效PHP實現,比傳統PHP7或HHVM效能提升接近10倍!GithubPHPLVM
- php5.6安裝Zend Opcache擴充套件PHPopcache套件
- office32位和64位有什麼區別嗎 office32位和64位哪個更好安裝哪個
- i7和i5的處理器哪個好 英特爾i7和i5cpu哪個更好
- Linux哪個版本更好用?常用Linux版本!Linux
- 隨機森林VS神經網路:哪個更好?隨機森林神經網路
- 小米手環2對比Fitbit Alta哪個更好?
- 深圳和廣州,哪個 php 工作好找一點呢?PHP
- 嵌入式開發和普通伺服器開發的前景哪個更好?伺服器