HHVM,高效能的PHP執行引擎

來源:互聯網
上載者:User

標籤:http   io   ar   使用   sp   for   strong   on   檔案   

HHVM (HipHop Virtual Machine) 是 Facebook 開源的 PHP 執行引擎。 HHVM 採用一種JIT(just-in-time)的編譯機制實現了高效能,同時又保持對 PHP 文法的充分支援。 在 Facebook 實際應用情境中,與 Zend PHP 5.2 引擎 + APC 相比,HHVM 實現了9倍的輸送量提升和5倍的記憶體節約。
HHVM 可以作為一個獨立的 webserver 運行,也可以提供 fastcgi 介面,掛在 webserver 下面。
官方部落格:http://www.hhvm.com
github:https://github.com/facebook/hhvm

一些貼吧問答:參考貼吧:http://tieba.baidu.com/f?kw=hhvm

1 Lighttpd搭配hhvm呢?

  這個也是可以的 如果是使用hhvm的fastcgi協議,只需要把lighttpd配置中的php-cgi地址改到hhvm監聽的連接埠或unix socket地址即可

2 hhvm跑PHP指令碼比zend還慢是怎麼回事?

1. 首先檢查你的配置項,必須設定Eval.Jit=1把JIT開啟才會快,如hhvm -vEval.Jit=1 test.php
2. 如果你是用time命令來計時,比如 time hhvm test.php 和time php test.php的結果來比較那是沒有意義的,因為這個時間包含了HHVM編譯PHP代碼和JIT編譯的時間,而不是已耗用時間。總的看這個時間HHVM是更慢的,因為更多時間花在編譯上。要測試回合時間的話,可以在PHP指令碼中用gettimeofday計時列印出來。
3. 如果你是用server模式,要注意Eval.JitWarmupRequests這個選項,這個值預設是11,意思是前11個請求不使用JIT模式執行(方便做一些類型收集之類的事情),從第12個請求來始才啟動JIT,所以前11個請求都是慢的,第12個請求才看出真正的效能。可以把Eval.JitWarmupRequests設定為0這樣就永遠都用JIT模式執行
4. 如果你是自己編譯的HHVM,那要用Release模式編譯,Debug模式編譯出來的運行效能很差。

3 php效能分析

xhprof是PHP效能分析的好工具
hhvm內建了xhprof相關的函數,但需要開啟編譯選項才能用
修改CMake/Options.cmake 檔案,把option(HOTPROFILER "Enable support for the hot-profiler" OFF)的OFF改為ON就可以了
其它的用法與zend版的相同,見xhprof的文檔即可

4 hhvm與hiphop的關係?

hiphop是之前facebook開發的將PHP轉換成C++代碼的編譯器,也稱HPHPc,PHP->C++->二進位程式->run,因為先行編譯好的所以必須犧牲PHP的一些動態特性(如eval);部署上,需要先線上下編譯好C++程式,再部署到線上執行。
hhvm是PHP執行引擎,PHP->Bytecode->(JIT)二進位code->執行,也支援直接執行Bytecode(Interpreter模式),兩者可以隨時切換,因此可支援完整的PHP特性;部署上,直接部署PHP代碼到線上就可以,HHVM會自動檢測代碼修改並重新編譯

5 hhvm的效能為什麼比zend引擎高?

http://tieba.baidu.com/p/2902029974

HHVM,高效能的PHP執行引擎

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.