自1994年php誕生以來,PHP語言經歷了許多改進,即使很多人唱衰PHP藥丸,但它的發展還是依舊在持續增長,今年已經是第25周年也還是沒完,且上了杜蕾斯的封面!PHP去年發布了7.4版本,性能提升不少。但是咱們今天來嘮嘮PHP8,因為預計在2020下半年即將發布,我們來看下測試結果。翻譯來自:https://www.oschina.net/news/116256/php8-jit-pre-alpha-benchmarks?p=4
所有受測試的版本都是在相同系統中使用相同的編譯器和 PHP 配置文件以相同的方式進行構建,測試環境如下:
測試結果如下:
上圖顯示了使用 PHPbench 測試各版本 PHP 的性能結果。可以看到,從 PHP 7.4 stable 到 PHP 8 有小幅度改進,大約是 7% 的提升,但如果 PHP 8 啟用了 JIT,性能改進可以說是非常明顯,比 PHP 7.4 stable 提升了 92%。至于更舊的版本,PHP 8 with JIT 的性能是 PHP 5.4 的 5 倍。
上圖是各版本 PHP Micro基準測試的結果,通過一些 PHP 自帶的內置測試,可以看到 PHP 8.0 的速度比已經很快的 PHP 7.4 略有提高,而啟用 JIT 支持后,其速度更是碾壓全場。
根據官方說法:PHP JIT 對于使用 PHP 的網站來說提速可能并不明顯,因為 JIT 在 計算機CPU 密集型的代碼上效果最好,所以性能提升只是順帶。
而一般情況下,用PHP編寫的程序都是 IO密集型的。用人話來講就是:PHP程序往往受限于IO而不是CPU,使PHP代碼運行速度變慢的因素往往是它們正在執行的 IO 操作,包括連接、讀取和寫入數據庫、高速緩存、文件與套接字等。(以上兩段消息來源于官方:https://wiki.php.net/rfc/jit)
那么這個時候Swoole協程、并發編程的出現正好提高對 IO 密集型場景并發處理能力!讓PHP也可以使用高性能微服務架構,通信場景、重新定義PHP!
然而在這里可能有PHPer說用Go不香嗎?要想成為一個優秀的開發者,你應該關注解決問題層面上來,用現有的技術資源去成就商業,而不是用公司的資源去成就一門技術,為了技術而技術!如果你不能用一種語言里面的基本特性寫出好的代碼解決問題,那你換成另外一種語言也無濟于事。技術人員的發展一直都是“T”字型,如果連吃飯的PHP都學不好,轉JAVA、Go語言你就能成為大牛了?