簡單介紹
ZendChina官方:Zend Optimizer用最佳化代碼的方法來提高PHP應用程式的執行速度。實現的原理是對那些在被最終執行之前由運行編譯器(Run-Time Compiler)產生的代碼進行最佳化。一般情況下,執行使用Zend Optimizer的PHP程式比不使用的要快40%到100%。這意味著網站的訪問者可以更快的瀏覽網頁,從而完成更多的事務,創造更好的客戶滿意度。更快的反應同時也意味著可以節省硬體投資,並增強網站所提供的服務。所以,使用Zend Optimizer,就等於提高了電子商務的盈利能力。Zend Optimizer能給PHP用戶帶來很多益處,特別是那些運營網站的人。快速運行PHP程式可以顯著降低伺服器的CPU負載,並可以減少一半的反應時間,也就是從訪問者點擊連結到伺服器開始讀取頁面之間的時間。
用最佳化代碼的方法來提高PHP v5.1應用程式的執行速度,執行使用Zend Optimizer的PHP程式比不使用的要快40%到100%,意味著網站的訪問者可以更快的瀏覽網頁,從而完成更多的事務,創造更好的客戶滿意度,更快的反應同時也意味著可以節省硬體投資,並增強網站所提供的服務。所以,使用Zend Optimizer,就等於提高了電子商務的盈利能力。
代碼最佳化
Zend Optimizer(以下簡稱ZO)用最佳化代碼的方法來提高php應用程式的執行速度。實現的原理是對那些在被最終執行之前由運行編譯器(Run-Time Compiler)產生的代碼進行最佳化。簡介
最佳化能提高你的盈利能力一般情況下,執行使用ZO的php程式比不使用的要快40%到100%。這意味著網站的訪問者可以更快的瀏覽網頁,從而完成更多的事務,創造更好的客戶滿意度。更快的反應同時也意味著可以節省硬體投資,並增強網站所提供的服務。所以,使用ZO,就等於提高了電子商務的盈利能力。
ZO能給php用戶帶來很多益處,特別是那些運營網站的人。快速運行php程式可以顯著降低伺服器的CpU負載,並可以減少一半的反應時間,也就是從訪問者點擊連結到伺服器開始讀取頁面之間的時間。
為什麼要用ZO,難道PHP4還不夠快嗎?
的確,用於PHP4的標準運行編譯器已經夠快了--相同情況下比PHP3要快2-10倍。但使用了ZO的PHP程式的執行速度還會加快40%到100%。ZO在PHP4軟體安裝的什麼位置?
ZO位於PHP4的ZEND引擎中,介於運行編譯器和最終執行器之間。ZO的最終發布版本要付費嗎?
不要。ZO的最終版本將繼續作為免費軟體來發布。ZEND技術公司不打算對任何ZO版本收費!怎樣獲得及安裝 Zend Optimizer
請訪問 擴展閱讀的第二個官方連結 下載 Zend Optimizer的最新版本。UNIX
編譯PHP,不要加調試選項-否則ZO不會工作:在配置是加上--disable-debug選項複製ZendOptimizerso檔案到你的機器,通常放在:/usr/local/Zend/lib下
在php.ini檔案中加入如下兩行,不要包含任何空格:
zend_optimizer.optimization_level=7
zend_extension="/usr/local/Zend/lib/ZendOptimizerso"
重新啟動Apache伺服器
WINDOWS
1、運行安裝檔案,首先提示你選擇安裝目錄,選擇一個你喜歡的目錄,單擊“Next”。2、安裝精靈會要求你選擇當前使用的WEB伺服器(Apache、IIS或其它),選擇好伺服器後單擊“Next”
3、安裝精靈提示您確認php.ini的位置(默認是C:\WINDOWS\)單擊“Next”,提示“備份php.ini到C:\WINDOWS\php.ini-Optimizer-bak,當卸載該軟體時可以恢復到原始的php.ini)單擊“Next”。
4、安裝精靈提示“為了繼續安裝程式需要重新啟動IIS服務)單擊“是”,安裝程式開始重新啟動IIS服務,然後安裝程式會提示“IIS服務順利重新啟動了”單擊“確定”,再單擊“finish”完成安裝。
5、安裝完畢後程式會自動根據你的選擇來修改php.ini幫助你啟動這個引擎。下面我們來介紹Zend Optimizer的配置選項,幫助你最大化自定義合理的配置。
[Zend]
zend_optimizer.optimization_level=15
zend_extension_ts="C:\Program Files\Zend\lib\ZendExtensionManager.dll"
zend_extension_manager.optimizer_ts="C:\Program Files\Zend\lib\Optimizer-2.5.5"
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
[Zend]
zend_optimizer.optimization_level=1023
zend_optimizer.encoder_loader=0
zend_extension_ts="C:\Program Files\Zend\lib\ZendOptimizer.dll"
(網上資料中所看到的內容,也許是版本不同造成的內容有差異)
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
現在我們來介紹上邊這些配置檔案中相關內容的含義:
zend_optimizer.optimization_level 《== 最佳化程度,這裡定義啟動多少個最佳化過程。
zend_optimizer.encoder_loader 《== 是否允許處理由Zend Encoder加密的PHP檔案。
zend_extension_ts 《== 最佳化器所在目錄。
zend_extension_manager.optimizer_ts 《== 最佳化器管理所在目錄。
最佳化過程
zend_optimizer.optimization_level 詳細解釋這裡最為重點的部分,仔細看!Zend Opt總共有10個最佳化過程,從理論上說開的越多性能越好。當然,理論和實際永遠都存在著差距。最佳化過程開啟的越多對性能消耗相對也越大,Zend Opt的10個最佳化過程並不相同也就是說效果不是平均的。Zend公司定義的最高值(High模式)為15,這裡15指的是開啟1-4號最佳化過程。當然,很多朋友並不滿足於此,畢竟最高也只開啟4個最佳化過程連總數的一半都沒有。各個最佳化過程的對應的數字代碼(值)如下:
不使用 0 <= 如果這樣不如不裝,還能節約點記憶體說!
最佳化過程1(PASS1) 1
最佳化過程2(PASS2) 2
最佳化過程3(PASS3) 4
最佳化過程4(PASS4) 8
最佳化過程5(PASS5) 16
最佳化過程6(PASS6) 32
最佳化過程7(PASS7) 64
最佳化過程8(PASS8) 128
最佳化過程9(PASS9) 256
最佳化過程10(PASS10) 512
以何種方式開啟最佳化過程是通過這些數字代碼(值)相加所得的和作為此參數的參數值來控制的。如我的配置檔案中zend_optimizer.optimization_level = 1023 , 這裡的1023是最佳化過程1到最佳化過程10全部數字代碼(值)相加得到的和,表示開啟全部10個最佳化過程。剛才所提到的Zend公司定義的High模式值為15,15表示同時開啟最佳化過程1-4。
加密代碼支持 zend_optimizer.encoder_loader 詳細解釋
對於這個參數,我想如果沒有看過Zend Opt FAQ文檔的朋友大多數並不知道。這個參數用來告訴Zend Opt是否去支持被Zend Encoder加密過的代碼。默認情況下Zend Opt將支持加密過的代碼。如果不使用被加密過的代碼我推薦你關閉此選項。這個功能牽扯到解包反碼的過程,會導致系統負荷的加重。我的朋友已經開發完畢相應的反編譯工具,預計春節之後推出。
這個參數的值只有兩個 0 關閉, 1 開啟。默認為1,推薦設定為0。
模組定位 zend_extension_ts 、zend_extension_manager.optimizer_ts無需解釋,這些參數就是Zend Optimizer相關模組在硬碟上的安裝路徑。
如何獲知Zend Optimizer是否在運行?
答案很簡單,只要用PHP的函式phpinfo()來檢測便知,如下所示: