書接上回 今天討論如何大幅度提高PHP的運行效率。php
在這,咱們不糾結神馬單雙引號、全局變量、OO、require_once、錯誤抑制....git
在這,咱們也不討論APC、opcache、XCache、eaccelerator....程序員
咱們知道,php的執行須要把腳本翻成Opcodes,通過必定的優化(須要工具支持)後再交給zend引擎去執行。github
那麼爲何不把PHP編譯成機器碼直接去運行呢?這是絕妙的主意!app
其實,已經有不少人在考慮這個事情了,而且還有一些人付諸實踐:工具
QBpost
"雖然PHP是構建Web應用的一門優秀語言,可是它仍有必定的侷限性。測試
用php編寫低執行級別的代碼、執行密集型任務通常是不切實際的,由於它太慢了。優化
而QB擴展克服了PHP的這個弱點。它經過翻譯Zend的操做碼並在靜態類型的虛擬機中執行,大幅度地提高了PHP的性能。
這種牛逼的技能可讓PHP程序員更多地作愛作的事情,好比說複雜的像素級的圖像處理。」
QB還給了一個性能測試圖表:
"The following graph shows the time required to calculate the CRC-32 checksum of 10meg of data:"
立竿見影,性能提高100倍,看上去確實很暴力!
除了QB,還有其餘的,好比非死不可的https://github.com/facebook/hiphop-php