咱們每一年都會嘗試深刻了解不一樣版本的 PHP 和 HHVM 在各類平臺的性能基準。 今年,咱們全面對 20 種不一樣平臺/配置中的四種不一樣的 PHP 引擎和 HHVM 進行了基準測試; 包括 WordPress,Drupal,Joomla!,Laravel,Symfony 等。 咱們還測試了流行的電子商務解決方案,如 WooCommerce,Easy Digital Downloads,Magento 和 PrestaShop。php
咱們一直鼓勵 WordPress 用戶利用最新的 支持的 PHP 版本 版本。 它們不只更安全,並且還提供了額外的性能改進。 固然,咱們並非在談論 WordPress,這在大多數平臺上都是如此。 今天咱們將向您展現 PHP 7.2 如何望風披靡!?html
今年的結果推翻了以往測試中 HHVM 的領先地位。 咱們很高興看到 PHP 7.2 在速度方面處於領先的引擎。 須要注意的是,WordPress 再也不支持 HHVM ,後續會徹底移除。 咱們再也不鼓勵咱們的客戶遷移到 HHVM,並告知他們它對各平臺支持不足的狀況。node
這對於開發人員和使用者來講都是好消息,由於這讓他們精力轉移到 PHP 上來,同時可以爲每一個人提供更快的網站和 web 服務。nginx
每一次測試,咱們都使用每一個平臺的最新版本,並用15個併發用戶進行一分鐘的主頁測試。如下是咱們測試環境的具體配置。laravel
OPCache:WordPress、Joomla 和 Drupal 三個平臺, 咱們使用官方 docker 鏡像。其餘平臺咱們都使用開啓 OPcache 的鏡像並使用如下php.ini
配置文件。git
opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 opcache.enable_cli=1
這些測試由 WordPress 的貢獻者和支持工程師 Threatq Firdaus 在 Kinsta 完成。他貢獻了 WordPress 的核心代碼和翻譯了印尼版的 WordPress。github
PHP : Hypertext Preprocessor(超文本處理器)。它是當今網絡上最流行的腳本語言之一。據 W3Techs 稱,全部服務器端編程語言的網站中,超過83%使用 PHP 。web
因爲 PHP 的性能問題,Facebook 的 PHP 團隊開發了 HipHop 虛擬機(HHVM)。它是一個使用即時(JIT)編譯技術將 PHP 代碼轉換爲機器語言以在 PHP 代碼和運行它的底層硬件之間創建協同做用的系統。docker
咱們的測試包括如下20個平臺/配置。 在某些平臺下,因爲缺少對特定 PHP 版本的支持,咱們不得不測試多個版本。 點擊下面的標題直接跳到對應的測試記錄和結果。 測試數據以每秒請求數來衡量。 固然請求數越多越好。數據庫
要測試是第一個平臺固然是咱們最喜歡的: WordPress (咱們可能有點偏向於天天生存和呼吸着這個CMS
?)。 WordPress
核心是你能夠用來建立漂亮的網站,博客,或者app的開源軟件。 實際上, WordPress
支持着互聯網上超過 所有網站29% 。 您訪問的超過1/4的網站可能由 WordPress
提供支持。
針對 WordPress
基準測試, 咱們使用免費的 Twenty Seventeen theme。 咱們使用來自 wptest.io
的虛擬內容及模擬15個用戶的併發來基準測試首頁一分鐘。
wptest.io
生成Docker Image
源自於 https://hub.docker.com/_/word...
WordPress
基準測試
PHP 7.2
證實比 HHVM
稍快而獲勝。 這與 2016 年 HHVM
明顯獲勝的基準測試有顯著的變化。 PHP for WordPress
也更加穩定。 咱們遇到了 HHVM
許多第一手問題。
WooCommerce 是一個爲 WordPress
構建的徹底可自定義的開源電子商務平臺。這也是目前最流行的電子商務結局方案之一,爲互聯網上超過 42%的電商平臺 提供支持。
針對下一個測試,咱們將 WordPress
同 WooCommerce
一塊兒安裝。咱們使用免費的 電商店面主題。
WordPress
+ WooCommerce
基準測試
WooCommerce
在 HHVM
中表現掙扎,同時 PHP 7.2
略微超過 PHP 7.1
。
Easy Digital Downloads (EDD), 由 Pippin Williamson 開發,是一款免費的 WordPress 電子商城插件,專一於幫助開發者銷售網上商品。
看了 WooCommerce 的表現後,咱們將 WordPress
和 EDD
一塊兒安裝。 咱們採用的是免費的 EDD 入門主題。
WordPress + Easy Digital Downloads 基準測試
在 WordPress
和 EDD
的測試中, PHP 7.2
仍然勝出。
Drupal
是一個開源的 CMS
(Content Management System
,即"內容管理系統"),因爲它的模塊化系統和強大的開發者社區而流行。它在2000年推出, 據 W3Techs 報道,Drupal
在全部網站中佔比 2.2% ,在 CMS
市場中佔比 4.4% (詳細調查) 。
對於 Drupal 的基準測試,咱們採用 Bartik 8.4.4 主題。注意! Drupal 8.4.x
不兼容 PHP 7.2
(詳細信息),所以,咱們沒有測試 PHP 7.2
。
Devel
模塊生成)
Drupal
基準測試
因爲 Drupal
的最新版不支持 PHP 7.2
, HHVM
贏下了這局。 看 PHP 的前一個版本(7.1)的性能表現,咱們能夠大膽推測 PHP 7.2
將會更快!
Joomla! 是一個發佈網頁內容的免費而開源 CMS
,最初發佈於2005年8月17日。 他創建於 model--view--controller
web 應用框架中,根據 W3Techs
他被互聯網上 3.1%的全部網站 使用。
針對 Joomla!
基準測試, 咱們使用免費的 Beez3 框架。
Joomla
帖子)Docker Image
源自於 https://hub.docker.com/_/joomla/
Joomla!
基準測試
在 Joomla!
咱們能夠看到在各個版本的 PHP
中穩步的性能提高。 但 HHVM
仍然領先。
Magento 是用 PHP 編寫的流行的開源電子商務平臺,於2008年3月31日發佈。 根據 W3Techs,它支持 全部互聯網的1.2%。
對於 Magento 2 的基準測試,咱們使用免費的 Luma 主題。咱們使用了兩個版本,由於 2.1.11 是惟一支持 PHP 5.6 的版本。 咱們安裝了樣本數據和默認主題。對於其它的測試,咱們使用 2.2.2 版本。Magento 2 目前還不支持 PHP 7.2 或者是最新版本的 HHVM。
Magento 2 基準測試
因爲 PHP 7.2 和最新版本的 HHVM 都不支持 Magento 2,因此 PHP 7.1 是明顯的贏家。經過每一個版本均可以得到一致的性能提高,這一點使人印象深入。
Grav 是一個簡單易用但功能強大的開源 CMS ,不須要數據庫,有時也被稱爲平面文件 CMS 。
對於 Grav CMS 的基準測試,咱們使用了免費的 Clean Blog 框架。值得注意的是 Grav CMS 已經再也不與 HHVM 編譯器兼容,它已經從 Travis 中 刪除了 HHVM 環境。
Grav CMS 基準測試
咱們能夠再次看到最新版本的 PHP (7.2) 在 Grav CMS 中是明顯的贏家。
October CMS 是一個基於 Laravel 的免費、開源、自主託管的模塊化 CMS 平臺。它最初於2014年5月15日發佈。
對於 October CMS 基準測試,咱們使用了免費的 Clean Blog 主題。須要注意的是 October CMS 再也不支持 PHP 5.6 和 HHVM。即便咱們能夠經過刪除 PHP 檢查來欺騙安裝程序,但它在配置嚮導中出現了會報500錯誤致使安裝失敗。
October CMS 基準測試
即便不支持兩個引擎,咱們能夠看到 PHP 7.2 再次獲勝。
很高興看到這些小衆的內容管理系統再也不支持舊版本的 PHP。儘管這不是一個很大的優點。由於當談到 WordPress 和其餘平臺佔有大部分市場份額時,因爲其兼容性問題,發展得比較緩慢。
Laravel 是一個很是流行的用於開發Web應用程序的開源PHP框架。它由Taylor Otwell建立,並於2011年6月發佈。
對於Laravel基準測試,咱們使用了純HTML主題。 測試運行屢次並取平均值。 您能夠在此電子表格中看到更多詳細信息。
posts
表post_title
, post_content
, post_author
, created_at
, updated_at
composer dump-autoload --classmap-authoritative
, php artisan optimize --force
, php artisan config:cache
, php artisan route:cache
Laravel 5.4.36 基準測試
HHVM以較大優點獲勝。
須要注意的是,Laravel 5.6與HHVM不兼容,而且須要PHP 7.1或更高版本。
Laravel 5.6 基準測試
若是您將Laravel 5.6 PHP 7.2基準測試結果與Laravel 5.4.36的基準測試結果進行比較,差別是驚人的! Laravel在最新版本的PHP中運行效率很是好。
Symfony 是一組可重用的 PHP 組件集合,同時也是一個用於建立 web、APIs、微服務和 web services 程序的 PHP 框架。它發佈於2005年10月22日。
對於 Symfony 的基準測試,咱們使用 Symfony Demo 和 MySQL (默認狀況下使用的是SQLite)。測試被屢次運行而後取結果的平均值。有一個重要的點須要注意,就是 HHVM 不能很好的工做並拋出了500錯誤。你能夠在這個 表格 中查看更多的信息。
Symfony 3.3.6 基準測試
PHP 7.2 再次成爲冠軍!
請注意 Symfony 4.0.1 的運行環境須要 PHP 7.1或以上。同時,HHVM再次不能正常工做並拋出 500 錯誤。
Symfony 4.0.1 基準測試
這裏沒有驚喜,PHP 7.2 再次登頂。
PyroCMS 是一個開源同時本質上是容許你更快的在框架上構建網站和應用的 Laravel
擴展。
針對 PyroCMS
基準測試,咱們使用免費的 Accelerant 主題 (默認 PyroCMS
主題)。 須要着重注意的是 PyroCMS
不能在 HHVM
中運行,多是因爲依賴 Laravel
。
PyroCMS
基準測試
PyroCMS
的測試結果很是相近, 但 PHP 7.2
再次表現的很好。
Pagekit 是一個由 YOOtheme 建立的開源模塊化輕量 CMS。它是各類工具的集合,爲建立更美好的網站服務。Pagekit 發佈於 2016 年春。
在 Pagekit 基準測試中,咱們使用的是免費的 One theme (Pagekit 默認主題).
Pagekit 基準測試
Pagekit 運行在 HHVM 時看起來有些捉急,而 PHP 7.2 顯然再次領跑各測試引擎。
Bolt CMS
, 或者叫 Bolt,是一個開源的內容管理工具,他力求儘量簡單直白。 他基於 Silex
和 Symfony
組件,使用 Twig
以及 SQLite
, MySQL
或者 PostgreSQL
。
針對 Bolt CMS
基準測試, 咱們使用免費的 Bolt Base 2016 主題。 着重注意的是 HHVM
不受支持 (#6921)。
Session
仍處於啓用狀態
Bolt CMS
基準測試
咱們能夠在這裏看到很不錯的指標,每一次新發布的 PHP
, Bolt CMS
能夠看到一致的性能提高。
Anchor 是一個超級簡單,開源且輕量級的博客系統,可使你專一於寫做。
對於 Anchor CMS的基準測試,咱們使用 Visual Idiot 編寫的免費 默認主題
Anchor CMS 基準測試
PHP 7.1 和 PHP 7.2 的測試結果很是接近,可是 PHP 7.1 在咱們的性能測試中表現更快一些
PrestaShop 是一個流行的而且快速增加的開源電子商務解決方案。它最初發佈於2008年7月31日,同時根據 W3Techs的數據,它在互聯網中的使用率是 0.6%
對於 PrestaShop 的基準測試,咱們使用免費的 傳統主題。請注意PrestaShop 不支持 HHVM
PrestaShop 基準測試
測試結果是不相伯仲的,可是 PHP 7.2 勉強的擠進去成爲領導者。
Craft CMS 是面向開發人員,設計人員和Web專業人員的專一內容管理系統,爲客戶提供靈活性和易用性的強大功能。
對於 Craft CMS 基準測試,咱們使用免費的 默認主題.
Craft CMS 基準測試
Craft CMS 在 HHVM 上表現的很差,但 PHP 7.2 又再一次是最快的。
Fork 是一個使用 Symfony 組件的易用的開源 CMS。對於 Fork CMS 的基準測試,咱們使用免費的默認 Fork 主題。須要注意的是 Fork CMS 須要 PHP 7.1 或更高的環境而且它不支持 HHVM。
Fork CMS 基準測試
在性能方面,PHP 7.2 擊敗了 PHP 7.1。
若是上述結果還不能說服你,咱們不知道還有什麼了。一個善意的提醒,若是你使用的是 Kinsta 客戶端咱們在 2017 年 12 月發佈了 PHP 7.2 。若是你想看到性能的提高,你能夠在你的 MyKinsta 儀表盤中輕鬆切換到 PHP 7.2 。
在 Kinsta 中切換到 PHP 7.2
若是你擔憂它與第三方插件不兼容(這有可能發生),這就是爲何咱們使用分段站點的緣由。 ? 你能夠嘗試它而不須要擔憂破壞你的生產環境。
你能夠清楚地從上面的測試中看到,縱觀全部平臺的性能時,php 7.2是領先的。?
咱們對PHP 7.2感到很是興奮,並但願你也是!咱們很樂意聽到你對咱們基準測試的想法,甚至你曾經升級過的體驗。能夠在下方評論中告訴咱們。
討論請前往 —— https://laravel-china.org/top...