ZendOptmizer在Linux和windows下配置的不同
2011-10-20 15:18
465 查看
首先,当php的代码被zend guard 加密之后,必须安装解密软件ZendOptimizer才能进行使用。
其次, ZO位于PHP5的ZEND引擎中,介于运行编译器和最终执行器之间。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。
复制ZendOptimizerso文件到你的机器,通常放在:/usr/local/Zend/lib下
在php.ini文件中加入如下两行,不要包含任何空格:
zend_optimizer.optimization_level=7
zend_extension="/usr/local/Zend/lib/ZendOptimizerso"
重新启动Apache服务器
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(); ?>
其次, ZO位于PHP5的ZEND引擎中,介于运行编译器和最终执行器之间。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。
LINUX
编译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
[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(); ?>
相关文章推荐
- linux_windows下配置tomcat区别 ,不同子域名映射不同 项目
- Zend Studio中Zend Debugger的安装与配置(Linux&Windows)
- H2数据库在Linux和Windows下不同的安装配置
- Gradle在Windows环境与Linux上配置有哪些不同?
- windows下的VIM php IDE设置.(附上了windows和linux下两个不同的vimrc配置)
- 在Linux下和windows下配置apache+php+mysql 开发环境和Zend Studio+Aptana Studio 的IDE
- Windows与VMware下Linux Samba服务器配置
- JFinal tomcat配置根路径(包括windows和linux)
- Windows、Linux系统安装JDK配置Java环境变量
- Debian(Linux)+XAMPP(LAMPP)+Zend Studio + PHP +XDebug 完整的开发环境配置方法。
- python安装MySQLdb:在windows下或linux下(以及eclipse中pydev使用msqldb的配置方法)
- 归档Redis在Windows,linux平台下的安装配置
- windows连接虚拟机linux下mysql配置
- ubuntu samba服务器配置(windows访问linux下文件夹,比VMware共享文件夹更高效)
- 连接远程linux spark 配置windows 下pycharm开发环境
- Java AES 加密在Windows和linux不同
- ZThread库的配置,Windows&Linux
- NodeManager 的配置(linux && windows)
- Linux/Windows共享之Samba服务器安装与配置