当前位置:在线查询网 > 在线百科全书查询 > Zend Optimizer

Zend Optimizer_在线百科全书查询


请输入要查询的词条内容:

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


请访问 http://www.zendcom/store/products/zend-optimizer.php 下载 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()来检测便知,如下所示:

<?

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.

相关分词: Zend Optimizer