標籤:閱讀 替代 第一個 博文 使用 基礎 表示 速度 title
HHVM 詳細介紹
HipHop VM(HHVM)是Facebook推出的用來執行PHP代碼的虛擬機器,它是一個PHP的JIT(Just-In- Time)編譯器,同時具有產生快速代碼和即時編譯的優點。
Facebook表示,HHVM將替代HPHPi,用於所有的PHP執行。根據 Facebook透漏,HHVM在速度方面獲得了顯著改進,比目前使用的PHP解譯器快60%,而使用記憶體減少90%。
Facebook於12年十二月初發布了一個博文,宣布他們的解釋型PHP運行環境HHVM(HipHop VM)已經達到甚至超過了編譯型PHP運行環境HipHop的運行速度。
HHVM是在HPHPc的基礎上構建,它會將PHP代碼轉換成進階別的位元組碼(一種中繼語言),在運行時即時(JIT)編譯器會將這些位元組碼翻譯成機器碼。
下面是一些關於位元組碼、機器碼和即時(JIT)編譯器的概念,快速的瀏覽以下概念,可以清楚這些概念在HHVM所處的角色。
位元組碼:是一種人類無法閱讀的代碼,專門用來給編譯器高效執行的。當HHVM首次附加元件目時,它會將所有的PHP代碼轉換成位元組碼;位元組碼的產生是與平台無關的。
機器碼:是一系列供CPU執行的指令。用過彙編的都應該清楚機器碼,估計沒人喜歡用彙編編程。通過編譯器就可以把彙編轉成機器碼,然後供CPU處理。
JIT(即時)編譯器:即時編譯是種軟體最佳化技術,指在運行時才會去編譯位元組碼。位元組碼會存放在記憶體中,然後JIT編譯器會根據需要載入並編譯所涉的位元組碼。
通過以上技術,HipHop和HHVM獲得了效能的提升。
最近,HHVM幾乎已經完全支援PHP 5.4了,但還是有不少bug,所以不是所有應用程式都可以運行。因此,Facebook準備讓最流行的20個開源PHP項目能夠運行在HHVM上。第一個已經支援的項目就是Wordpress
HHVM 3.0 發布,執行 PHP 的虛擬機器