Zend Optimizer

Zend Optimizer

Zend Optimizer(以下簡稱ZO)是一款ZEND技術公司出品的免費軟體。其作用是用最佳化代碼的方法來提高php應用程式的執行速度。實現的原理是對那些在被最終執行之前由運行編譯器(Run-Time Compiler)產生的代碼進行最佳化。

基本介紹

  • 中文名:Zend Optimizer
  • 外文名:ZO
  • 作用:提高php應用程式的執行速度
  • 創立者:ZEND技術公司
簡介,作用,安裝位置,免費版本,下載安裝,UNIX,WINDOWS,最佳化過程,

簡介

最佳化能提高你的盈利能力
一般情況下,執行使用ZO的php程式比不使用的要快40%到100%。這意味著網站的訪問者可以更快的瀏覽網頁,從而完成更多的事務,創造更好的客戶滿意度。更快的反應同時也意味著可以節省硬體投資,並增強網站所提供的服務。所以,使用ZO,就等於提高了電子商務的盈利能力。
ZO能給php用戶帶來很多益處,特別是那些運營網站的人。快速運行php程式可以顯著降低伺服器的CpU負載,並可以減少一半的反應時間,也就是從訪問者點擊連結到伺服器開始讀取頁面之間的時間。

作用

的確,用於PHP4的標準運行編譯器已經夠快了--相同情況下比PHP3要快2-10倍。但使用了ZO的PHP程式的執行速度還會加快40%到100%。

安裝位置

ZO位於PHP4的ZEND引擎中,介於運行編譯器和最終執行器之間。

免費版本

ZO的最終版本將繼續作為免費軟體來發布。ZEND技術公司不打算對任何ZO版本收費。

下載安裝

請訪問 http://www.zend.com/store/products/zend-optimizer.php 下載 Zend Optimizer 的最新版本。

UNIX

編譯PHP,不要加調試選項-否則ZO不會工作:在配置是加上--disable-debug選項
複製ZendOptimizerso檔案到你的機器,通常放在:/usr/local/Zend/lib下
在php.ini檔案中加入如下兩行,不要包含任何空格:
zend_optimizer.optimization_level=7zend_extension="/usr/local/Zend/lib/ZendOptimizer .so"
重新啟動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 OptFAQ文檔的朋友大多數並不知道。這個參數用來告訴Zend Opt是否去支持被Zend Encoder加密過的代碼。默認情況下Zend Opt將支持加密過的代碼。如果不使用被加密過的代碼我推薦你關閉此選項。這個功能牽扯到解包反碼的過程,會導致系統負荷的加重。
這個參數的值只有兩個 0 關閉, 1 開啟。默認為1,推薦設定為0。
模組定位 zend_extension_ts 、zend_extension_manager.optimizer_ts無需解釋,這些參數就是Zend Optimizer相關模組在硬碟上的安裝路徑。
如何獲知Zend Optimizer是否在運行?
答案很簡單,只要用PHP的函式phpinfo()來檢測便知,如下所示:
<?
phpinfo();
?>
顯示的結果中關於Zend Optimizer的部分就象下面這樣:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.0, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.0, Copyright (c) 1998-2007, by Zend Technologies
表示 Zend Optimizer for PHP最佳化成功了。
補充作用
當php的代碼被Zend Guard加密過後,必須安裝解密軟體Zend Optimizer才能進行使用。比如Shopex,Shopnc.

相關詞條

熱門詞條

聯絡我們