PHP代码的加密与OPcode缓存
2014-02-24 14:39
190 查看
1.Zend Optimizer v3.x.x v2.x.x
在PHP-5.2.x以前的PHP版本使用,用优化代码的方法来提高PHP应用程序的执行速度,理论上要比不使用ZO要快40%-100%。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。(来自百科)而且在PHP-5.2.x之前只有通过官方Zend Optimizer才能运行经Zend Guard加密和混淆的PHP代码。
2.Zend Guard Loader
PHP-5.3.x之后的PHP版本使用,加强对PHP商用代码的保护,并提高PHP的执行性能,其前身就是Zend Optimizer。
3.OPcache
能够在共享内存中储存预编译的PHP脚本,以提高PHP的执行性能,从而使得不用每次请求都要加载足浴粉与解析PHP脚本。PHP-5.5以后,已捆绑和PHP一起发布。
4.APC
Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。可以做PHP文件的opcode缓存,也可以做用户数据缓存(小量的)。
5.eAccelerator
eAccelerator 是一个免费开源的PHP加速、优化、编译和动态缓存的项目,它可以通过缓存PHP代码编译后的结果来提高PHP脚本的性能,eAccelerator 通过把经过编译后的PHP代码缓存到共享内存中,并在用户访问的时候直接调用从而起到高效的加速作用,虽然是一个好足浴粉项目,但是已经几年没有更新了,最新版本支持php-5.4,当然是官方说的。
6.PHP代码的加密与OPcode缓存
将PHP代码直接编译为opcode代码,其实也是一种加密PHP代码的机制了,因为只需要再进一步将opcode代码简单的序列化或者混淆,然后在Zend虚拟机执行之后,反解为opcode代码即可。但是加密的目的是为了避免足浴粉源代码被分析的可能;而opcode是为了提高程序的运行速度。
总结:如果要选择OPcode那就直接用PHP官方推荐的OPcache吧,如果你的是商业PHP代码,在PHP-5.2.x之前选择是Zend Optimizer,但是PHP-5.3+的版本就需要使用Zend Guard Loader了。值得注意的是PHP加密并优化之后,还可以选择一种Opcode缓存。
在PHP-5.2.x以前的PHP版本使用,用优化代码的方法来提高PHP应用程序的执行速度,理论上要比不使用ZO要快40%-100%。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。(来自百科)而且在PHP-5.2.x之前只有通过官方Zend Optimizer才能运行经Zend Guard加密和混淆的PHP代码。
2.Zend Guard Loader
PHP-5.3.x之后的PHP版本使用,加强对PHP商用代码的保护,并提高PHP的执行性能,其前身就是Zend Optimizer。
3.OPcache
能够在共享内存中储存预编译的PHP脚本,以提高PHP的执行性能,从而使得不用每次请求都要加载足浴粉与解析PHP脚本。PHP-5.5以后,已捆绑和PHP一起发布。
4.APC
Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。可以做PHP文件的opcode缓存,也可以做用户数据缓存(小量的)。
5.eAccelerator
eAccelerator 是一个免费开源的PHP加速、优化、编译和动态缓存的项目,它可以通过缓存PHP代码编译后的结果来提高PHP脚本的性能,eAccelerator 通过把经过编译后的PHP代码缓存到共享内存中,并在用户访问的时候直接调用从而起到高效的加速作用,虽然是一个好足浴粉项目,但是已经几年没有更新了,最新版本支持php-5.4,当然是官方说的。
6.PHP代码的加密与OPcode缓存
将PHP代码直接编译为opcode代码,其实也是一种加密PHP代码的机制了,因为只需要再进一步将opcode代码简单的序列化或者混淆,然后在Zend虚拟机执行之后,反解为opcode代码即可。但是加密的目的是为了避免足浴粉源代码被分析的可能;而opcode是为了提高程序的运行速度。
总结:如果要选择OPcode那就直接用PHP官方推荐的OPcache吧,如果你的是商业PHP代码,在PHP-5.2.x之前选择是Zend Optimizer,但是PHP-5.3+的版本就需要使用Zend Guard Loader了。值得注意的是PHP加密并优化之后,还可以选择一种Opcode缓存。
相关文章推荐
- 加密PHP代码及PHP Opcode缓存小结
- MD5 .net与PHP加密值一样的加密代码
- PHP OPCode缓存:Window下安装APC
- 使用bcompiler对PHP文件进行加密的代码
- 浅谈 PHP 中的多种加密技术及代码示例
- PHP--opcode 脚本缓存
- PHP之Opcode缓存 AND Memcache缓存使用引导篇
- php RSA加密传输代码示例
- PHP 生命周期,Opcode 缓存。
- php内存缓存实现程序代码
- php文件缓存技术实现代码
- [李景山php] 深入理解PHP内核[读书笔记]--第二章:用户代码执行--opcode
- PHP代码加密_解密
- PHP内核探索:代码的加密与解密
- php 缓存函数代码
- php中3des加密代码(完全与.net中的兼容)
- PHP-编译运行过程以及opcode缓存的笔记
- 解密目前DEZEND工具不能够解密的zend加密php文件 如解密出现 [exception occured] 代码溢出问题