首頁 >後端開發 >PHP7 >你知道是什麼原因導致php7比5快嗎?

你知道是什麼原因導致php7比5快嗎?

藏色散人
藏色散人轉載
2020-07-14 13:18:593059瀏覽

你知道是什麼原因導致php7比5快嗎?

效能提升的原因?

#1、儲存變數的結構體變小,盡量讓結構體裡成員共用內存空間,減少引用,這樣記憶體佔用降低,變數的操作速度提升。

2、字串結構體的改變,字串資訊和資料本身原來是分成兩個獨立記憶體區塊存放,php7盡量將它們存入同一塊內存,提升了cpu快取命中率。

3、陣列結構的改變,數組元素和hash映射表在php5中會存入多個記憶體區塊,php7盡量將它們分配在同一塊記憶體裡,降低了記憶體佔用、提升了cpu緩存命中率。

4、改進了函數的呼叫機制,透過對參數傳遞環節的最佳化,減少一些指令操作,提高了執行效率。

為什麼PHP7的效能可以提升這麼多?

1. JIT
2. Zval的改變
3.內部類型zend_string
4. PHP陣列的變化(HashTable和Zend Array)
5.函數調用機制(Function Calling Convention)
6. 透過巨集定義和內聯函數(inline),讓編譯器提前完成部分工作

為什麼PHP7的在實際的業務性能提高才30%左右?

實際的業務不一定有很複雜的運算邏輯

實際的業務會用到Redis 和MYSQL,網路和IO的瓶頸影響了PHP7的整體效能

HTTPS的效能問題限制了PHP7的能力

推薦:《PHP7

以上是你知道是什麼原因導致php7比5快嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除