日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

【專訪 PHP 之父】PHP7 性能翻倍關鍵大揭露

瀏覽:286日期:2022-09-12 14:08:48

20歲老牌網頁程序語言PHP,最快將在10月底釋出PHP 7新版,這是十年來的首次大改版,最大特色是在性能上的大突破,能比前一版PHP 5快上一倍,PHP之父Rasmus Lerdorf表示,甚至能比HHVM虛擬機下的PHP程序性能更快。

【專訪 PHP 之父】PHP7 性能翻倍關鍵大揭露

HHVM 是臉書為自家網站特性而量身客制的PHP優化機制,不見得適用任何網站。但Rasmus Lerdorf表示,新版目標之一就是要讓任何網站開發者,就連使用開發框架Drupal、開源電子商務系統Opencart時,都能有不輸使用HHVM 技術的性能。在新版發表前夕,他也趁來臺參加PHPConf Taiwan年會時,分享PHP 7性能大突破的關鍵。

一個20年來歷經了多 次改版和無數次優化的成熟語言,還能有性能提高一倍的突破絕非易事,Rasmus Lerdorf坦言,不像一般新項目多半容易找出許多改進空間,新版PHP并非修改部分程序就達到了如此的成果。反而是,透過大量細節優化和性能累加 后,PHP 7才具備了不輸HHVM的執行性能。

Rasmus Lerdorf與PHP核心貢獻團隊花了許多心力減少程序運作時搬動的內存位數,由此加速執行的性能。例如,PHP中儲存變量的數據架構zval從24位 縮減至16位、Hashtable從72位減少至56位,并檢視PHP中的函式,思考有無任何改進性能的空間。

除了從減少內存的使用著手 外,Rasmus Lerdorf更檢視CPU的Cache line的運作原理,了解程序代碼如何與CPU互動、編譯程序如何在新CPU架構下編譯程序代碼等細節,確保PHP 7的程序代碼符合現代CPU的架構。雖然每個項目的優化對性能貢獻都低于0.5%,但由于優化的項目很多,或是某項改善的功能會被應用程序反復呼叫,整體 修正的綜效結果就能有如此大的進展。

  受HHVM刺激,決定打造兼具性能與功能的PHP

Facebook為了優化PHP運作,搭配JIT編 譯而打造出虛擬機HHVM。而HHVM雖然擁有快速的執行性能,其為特定用途優化的設計,只能滿足小部分的開發者。反之,Rasmus Lerdorf除了想提升PHP的性能表現外,也想要同時滿足高端使用者以及業余使用者的需求,讓PHP 7成為兼備性能表現及通用功能的程序語言。

然而,開發符合市場上少部分人使用的程序語言并不是難事,但是PHP項目瞄準許多對象,必須同時符合業余使用者及專業開發者需求的原則下,開發難以面面俱 到,因為總是會有部分族群的需求無法被滿足,「這就像拿水管大范圍的噴灑,而每個人衣服都會被水沾濕一點,但是不會有人的衣服完全濕透。」Rasmus Lerdorf比喻。

不使用外掛框架的PHP的運算性能表現都很優異,但是受到外加框架的影響,原本可以在數秒內處理上千個網頁要求的 PHP,性能大幅下降,變為只能處理數十個要求。Rasmus Lerdorf表示,在HHVM出現之前,相較于對PHP性能表現的要求,使用者比較在意PHP能否降低網頁開發的難度,而這些框架能讓開發者的工作變得 比較簡單。但是在Facebook推出HHVM后,引出許多重視PHP性能表現的使用者,讓Rasmus Lerdorf意識到許多使用者有性能表現的需求。他開始思考如何將HHVM的JIT架構與PHP融合。

但Rasmus Lerdorf表示,PHP與HHVM兩者在架構設計上相當不同,例如,HHVM的多線程架構并不是很穩固。此外,HHVM的可移植性并不佳,離可以在 Windows平臺上運作還有很大一段路,而PHP有很多開發者在Windows環境開發,而HHVM無法照顧到那些使用者。

Rasmus Lerdorf表示,他不能放棄PHP的主要架構,雖然他們曾經考慮過融合兩者,但是,HHVM在使用上有很多的限制。雖然HHVM對Facebook及 許多開發者是非常好的工具,但對于PHP項目來說,HHVM的使用范疇還不夠寬廣,只能符合Facebook或是Wikipedia等特定項目的需求。

非強型別語言的PHP,導入JIT是難上加難

然而,在PHP中加入JIT編譯是件非常困難的事情。Rasmus Lerdorf表示,JIT必須學會辨認程序的運作模(Patterns),例如了解哪些部份為重要的程序代碼,并且在程序運作前,預測程序被呼叫的時 機,或是哪些部分的程序會呼叫。

Rasmus Lerdorf比喻,在許多汽車中,JIT必須能預測哪部分的車子會右轉、哪部分的車子會左轉或是某些顏色汽車會直行,「而JIT必須要全部預測正確,否則性能會大大的降低。」但是,如果預測正確,程序執行性能則會大大提升。

在一般的程序語言的編譯中加入JIT已屬不易,Rasmus Lerdorf表示,由于PHP的動態屬性(dynamic)讓加入JIT是難上加難。他舉例,開發者宣告參數$a值為1,但不代表程序所有的$ a的值都為1,由于PHP中參數值可以很輕易地重新定義。在C語言中,當開發者宣告參數a為整數,則a永遠為整數。如果程序中有任何地方宣告a是整數以外 的類型,連編譯都無法執行。而因為C語言此種強型別的程序語言,「JIT可以預測變量a為整數,但是在PHP中,我們沒有這種奢侈。」他解釋,HHVM的 做法為當JIT得知a是整數型別后,則假設a永遠為整數。

而HHVM為了在使用JIT編譯,某種程度上受限了PHP的發展。HHVM的用戶 必須清楚宣告變量的性質,但是使用PHP的開發者,可以先宣告沒有性質的類別(Class),后續再指定類別的變量屬性。「在沒有任何限制下,將JIT加 入PHP是我們要做的事。」他表示,PHP必須顧及Wordpress、Drupal等框架的開發者,不能任意停止對此些框架的支持。故與HHVM相 比,PHP在打造JIT的條件限制更多。

但是,「這不代表我們不能做JIT。此外,我們也要控制PHP的發展走向。」Rasmus Lerdorf表示。

目前,PHP核心貢獻者之一的Dmitry Stogov開發一個原型JIT,并且使用某些實驗性的應用程序去測試運作。Rasmus Lerdorf表示,如果將此JIT用于執行某些重復性的運算或是循環程序,得以讓PHP 7性能又再快上10倍。

不過他也坦承,當此實驗性的JIT用于Wordpress時,并未得到任何加速效果,「我們想要打造的JIT不是要在大學課本上學到的東西,而是能在真實世 界中運作的JIT。」他表示。因為PHP一直都抱持如此的理想,試圖解決人們生活中的問題,并且能真實世界中在線環境中運作,而不只是存在課本中的理論。

Rasmus Lerdorf表示,在PHP剛問世時,他每天至少花16個小時開發PHP。但目前他已經逐漸減少投入開發,轉而投注心力在世界各地宣傳及演講。他打趣地 表示:「與其自己開發,不如激勵遠比我聰明,又愿意一天花十八小時寫程序的人去開發PHP。」他表示,他的最終目標是PHP中沒有任何一行由他所撰寫的程 序代碼,「任何在成長中的項目都不應該由一個開發者主導,老舊的程序代碼應該被新的程序代碼替換。」而他認為,其他開發者應該以此為目標。

標簽: PHP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美日本久久| 精品久久久网| 日韩成人三级| 精品欧美日韩精品| 麻豆国产欧美日韩综合精品二区| 九九精品调教| 婷婷亚洲综合| 国产一区导航| 亚洲91网站| 国产精品成人一区二区网站软件| 日韩国产精品久久久久久亚洲| 中文字幕视频精品一区二区三区| 蜜臀久久久99精品久久久久久| 亚洲视频二区| 国产精品亚洲欧美一级在线| 国产精品白丝久久av网站| 日本久久黄色| 日韩午夜在线| 欧美日韩在线精品一区二区三区激情综合 | 黄色欧美在线| 久久久久久黄| 日韩一区二区三区四区五区| 国产精品成人国产| 久久久国产精品一区二区中文| 久久亚洲电影| 精品淫伦v久久水蜜桃| 狠狠久久婷婷| 国产精品一区二区三区美女 | 欧美日韩亚洲三区| 四虎4545www国产精品| 日韩中文字幕亚洲一区二区va在线| 欧美日韩 国产精品| 精品日韩视频| 国产精品久久久久久久久久齐齐 | 日韩欧美字幕| 欧美一级二区| 久久精品一区二区三区中文字幕| 国精品一区二区| 国产精品久久久久久av公交车| 激情综合激情| 精品久久精品| 日韩精品1区2区3区| 99视频精品全国免费| 国产精品一区二区精品 | 国产精品免费99久久久| 99综合视频| 日韩天堂在线| 精品国产成人| 欧美久久香蕉| 国产亚洲一区二区三区啪| 日韩国产欧美一区二区| 日韩av在线免费观看不卡| 天堂av在线| 亚洲1区在线观看| 久久久久久久久久久9不雅视频| 欧美黑人做爰爽爽爽| 蜜桃免费网站一区二区三区| 日韩1区在线| 精品丝袜久久| 免费日韩av片| 免费观看不卡av| 久久人人精品| 久久精品123| 日本免费久久| 日韩av中文在线观看| 蜜臀va亚洲va欧美va天堂| 99久久久久国产精品| 久久av导航| 国产精品99久久免费| 欧美日韩夜夜| 日韩手机在线| 欧美亚洲一区二区三区| 亚洲精品日本| 日本不卡高清| 欧美一级久久| 国内精品亚洲| 午夜精品成人av| 日韩国产一区二区| 在线精品亚洲欧美日韩国产| 国产精品成人国产| 精品国产一区二| 99tv成人| 一区二区电影| 久久激情五月激情| 精品视频高潮| 欧美日韩国产亚洲一区| 中文字幕av亚洲精品一部二部| 国产精品久久久免费| 日韩成人精品一区| 免费视频一区三区| 亚洲精品系列| 九九色在线视频| 欧美在线91| 激情五月综合网| 亚欧洲精品视频在线观看| 国产一区二区三区日韩精品 | 亚洲精品在线二区| 麻豆国产精品视频| 99国产精品久久久久久久| 青青草视频一区| 欧美成a人免费观看久久| 久久亚洲欧美| 欧美精品国产白浆久久久久| 欧美视频精品全部免费观看| 韩日一区二区三区| 日韩成人精品一区二区三区 | 日韩极品在线观看| 久久69成人| 日韩精品2区| 麻豆精品视频在线| 国产不卡精品| 亚洲综合专区| 日韩成人三级| 青草国产精品| 日韩在线免费| 国产精品一区亚洲| 日韩精品乱码av一区二区| 裤袜国产欧美精品一区| 久久xxxx| 麻豆国产欧美一区二区三区| 丝袜亚洲另类欧美| 九九精品调教| 国产精品夜夜夜| 国产精品s色| 日韩黄色免费网站| 亚州av乱码久久精品蜜桃| 99在线观看免费视频精品观看| 美女视频一区在线观看| 亚洲乱亚洲高清| 日韩国产精品久久久久久亚洲| 99视频+国产日韩欧美| 日韩国产在线| 超碰成人av| 69堂精品视频在线播放| 亚洲综合小说| 91成人在线| 午夜精品影视国产一区在线麻豆| 欧美成人久久| 1000部精品久久久久久久久| 亚洲欧洲美洲av| 欧美sm一区| 伊人久久亚洲美女图片| 久久精品国产68国产精品亚洲| 欧美sm一区| 久久婷婷一区| 国产不卡精品| 日韩欧美精品一区| 天堂中文av在线资源库| 国产精品一区二区精品视频观看| 美女久久一区| 91高清一区| 影音国产精品| 久久www成人_看片免费不卡| 99国产精品视频免费观看一公开 | 精品久久免费| 亚洲精品韩国| 午夜亚洲一区| 亚洲青青久久| 精品网站999| 欧美在线观看视频一区| 日韩理论视频| 在线 亚洲欧美在线综合一区| 欧美精品九九| 国产精品久久777777毛茸茸| 久久gogo国模啪啪裸体| 蜜臀国产一区| 亚洲影院天堂中文av色| 麻豆91小视频| 亚洲aa在线| 亚洲日本网址| 精品在线播放| 国产毛片一区二区三区| 高清一区二区三区av| 日本亚洲最大的色成网站www | 美女少妇全过程你懂的久久| 最新国产精品| 国产精品成久久久久| 久久国产精品免费精品3p | 中文一区二区| 婷婷综合六月| 国产欧美日韩综合一区在线播放| 国产精品激情电影| 久久在线视频免费观看| 日本精品国产| 欧美精选一区二区三区| 日韩电影免费在线观看| 日韩高清不卡一区| 99久久亚洲精品蜜臀| 国产精品99精品一区二区三区∴| 黄色av一区| 99香蕉国产精品偷在线观看| 精品视频网站| 一区二区三区午夜视频| av中文字幕在线观看第一页| 91超碰国产精品| 日韩欧美少妇| 一区二区电影在线观看| 欧美福利专区| 久久理论电影| 亚洲自拍另类|