eAccelerator是一个为PHP程序加速的免费开源软件其极速效果绝不输给ZendPerformance Suite。并且支持Linux,FreeBSD,Solaris,MacOS X,Windows等系统。eAccelerator for PHP
什么是eAccelerator eAccelerator是一个开源并且免费的PHP加速器优化器编码器 同时也能够为PHP提供动态内容缓存。它能够将PHP脚本缓存为已编译状态以达到提升PHP脚本运行性能
的目的因此传统的预编译几乎被消除。 eAccelerator也能够优化PHP脚本以提升PHP脚本的执行速度。 eAccelerator可有效降低服务器负载并且提高PHP程序速度达1-10倍。
TurckMMCache是eAccelerator的前身。
(http://sourceforge.net/project/turckmm-cache/ by Dmitry Stogov)eAccelerator包含一个PHP编码器和加载器。您可以使用编码器对.php脚本进行编码从而能够以非源代码方式发布您的PHP程序。经过编码的PHP程序可以运行在任何安装有
PHP解析环境和eAccelerator的站点上 由于编码后的PHP程序存储为已编译代码并且
已编译版本中不包含程序的源代码因此经过eAccelerator编码的PHP程序是不能被还原
恢复的。当然一些内部脚本可以被某些不同的反编译引擎工具如disassemblers,debuggers等
进行还原恢复但这并非是微不足道的。eAccelerator与Zend Optimizer加载器兼容。在php. ini中 Zend Optimizer必须在eAccelerator之后加载。如果您的站点不运行任何经由Zend编码器编码的PHP脚本那么
我们并不推荐您在安装eAccelerator的服务器上安装Zend Optimizer。eAccelerator不能运行于CGI模式下但它可以运行于像l ighttpd类似的Fast-CGI模式。
以下是一些与eAccelerator具有相同功能的产品
-Zend Performance Suite(http://www.zend.com)
-Alternative PHP Cache(http://pecl .php.net/package/APC)
下载
最新版的eAccelerator可以在Sourceforge下载http://sourceforge.net/projects/eaccelerator/
CVS开发版本快照(snapshots)可以在以下地址下载http://snapshots,eaccelerator.net
所需环境
Apache 1 .3或更高版本mod_php 4.1或更高版本autoconfautomakel ibtoolm4
兼容性
经过用户的使用和报告 eAccelerator能够运行在PHP4和PHP5。 PHP5.1 目前尚不能完整的
支持。eAccelerator能够与Apache 1 .3/2.0、 l ighttpd、和I IS在Linux、FreeBSD、MacOS
X、 Solaris和
Windows上运行。
快速安装
您可以在eAccelerator站点获取更多有关安装方面的信息。http://eaccelerator.sourceforge.net/
注意(1)有关Microsoft Windows平台的安装信息请阅读README.win32 fi le。
步骤1 .编译eAcceleratorcd/usr/local/srcwget http://internap.dl .sourceforge.n . . . rator-0.9.4.tar.bz2tar xjvf eaccelerator-0.9.4.tar.bz2cd eaccelerator-0.9.4.tar.bz2export PHP_PREFIX="/usr/local/php"
$PHP_PREFIX/bin/phpize
./configure\
--enable-eaccelerator=shared\
--with-php-config=$PHP_PREFIX/bin/php-configmake
您必须在export命令中指定PHP真实的安装目录位置。该目录位置可能是"/usr""/usr/local"或
其他位置。
步骤2.安装eAcceleratormake instal l
步骤3.配置eAcceleratoreAccelerator可以安装为Zend扩展或者PHP扩展。
对于eAccelerator 0.9.1及其以上版本如果您系统中存在/etc/php.d 目录则需要将eaccelerator. ini
文件复制到该目录中并且根据需要修改其中的默认设置和数值。
如果系统中不存在/etc/php.d 目录则编辑php. ini文件通常位于/etc/php. ini 。安装为Ze n d扩展
zend_extension="/usr/l ib/php4/eaccelerator.so"eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"eaccelerator.enable="1"eaccelerator.optimizer="1"eaccelerator.check_mtime="1"
eaccelerator.debug="0"eaccelerator.fi lter=""eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"eaccelerator.shm_prune_period="0"eaccelerator.shm_only="0"eaccelerator.compress="1"eaccelerator.compress_level="9"
如果您使用thread safe编译安装PHP则您必须使用"zend_extension_ts"代替"zend_extension"。
安装为PHP扩展extension="eaccelerator.so"eaccelerator.shm_size="16"eaccelerator.cache_dir="/tmp/eaccelerator"eaccelerator.enable="1"eaccelerator.optimizer="1"eaccelerator.check_mtime="1"eaccelerator.debug="0"eaccelerator.fi lter=""eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"eaccelerator.shm_prune_period="0"eaccelerator.shm_only="0"eaccelerator.compress="1"eaccelerator.compress_level="9"
步骤4.创建缓存目录
mkdir /tmp/eacceleratorchomd 0777/tmp/eaccelerator
配置选项eaccelerator.shm_size
指定eAccelerator能够使用的共享内存数量单位 MB。
"0"代表操作系统默认。默认值为"0"。eaccelerator.cache_dir
用户磁盘缓存的目录。 eAccelerator在该目录中存储预编译代码、 session数据、 内容等。
相同的数据也可以存储于共享内存中以获得更快的存取速度 。默认值为"/tmp/eaccelerator"。eaccelerator.enable
开启或关闭eAccelerator。 "1"为开启 "0"为关闭。默认值为"1"。eaccelerator.optimizer
开启或关闭内部优化器可以提升代码执行速度。 "1"为开启 "0"为关闭。默认值为"eaccelerator.debug
开启或关闭调试日志记录。 "1"为开启 "0"为关闭。默认值为"0"。eaccelerator.check_mtime
开启或关闭PHP文件改动检查。 "1"为开启 "0"为关闭。如果您想要在修改后重新编译PHP
程序则需要设置为"1"。默认值为"1"。eaccelerator.fi lter
判断哪些PHP文件必须缓存。您可以指定缓存和不缓存的文件类型如"*.php
*.phtml"等
如果参数以"!"开头则匹配这些参数的文件被忽略缓存。默认值为""即所有PHP文件
都将被缓存。
eaccelerator.shm_max
当使用"eaccelerator_put() "函数时禁止其向共享内存中存储过大的文件。该参数指定允许
存储的最大值单位字节(10240, 10K, 1M)。 "0"为不限制。默认值为"0"。eaccelerator.shm_ttl
当eAccelerator获取新脚本的共享内存大小失败时它将从共享内存中删除所有在
最后"shm_ttl"秒内无法存取的脚本缓存。默认值为"0" 即不从共享内春中删除
任何缓存文件。eaccelerator.shm_prune_period
当eAccelerator获取新脚本的共享内存大小失败时他将试图从共享内存中删除早于
"shm_prune_period"秒的缓存脚本。默认值为"0" 即不从共享内春中删除
任何缓存文件。eaccelerator.shm_only
允许或禁止将已编译脚本缓存在磁盘上。该选项对session数据和内容缓存无效。默认
值为"0" 即使用磁盘和共享内存进行缓存。eaccelerator.compress
允许或禁止压缩内容缓存。默认值为"1" 即允许压缩。eaccelerator.compress_level
指定内容缓存的压缩等级。默认值为"9"为最高等级。eaccelerator.name_sapce
一个所有键(keys)的前缀字符串。如果设置该前缀字符串则允许.htaccess或者主配置
文件在相同主机上运行两个相同的键名。eaccelerator.keyseaccelerator.sessionseaccelerator.content
判断哪些键(keys)、 session数据和内容将被缓存。可用参数值为
"shm_and_disk" -同时在共享内存和磁盘中缓存数据默认值
"shm" -如果共享内存用尽或者数据容量大于"eaccelerator.shm_max"
则在共享内存或磁盘中缓存数据
"shm_only" -仅在共享内存中缓存数据
"disk_only" -仅在磁盘中缓存数据
"none" -禁止缓存数据。eAccelerator应用程序接口(API)eaccelerator_put($key,$value,$ttl=0)
将$value存储在共享内存中并存储$tl l秒。eaccelerator_get($key)
从共享内存中返回eaccelerator_put()函数所存储的缓存数值如果不存在或者已经过期则返回nul l。eaccelerator_rm($key)
从共享内存中删除$key。eaccelerator_gc()
删除所有过期的键(keys)eaccelerator_lock($lock)
创建一个指定名称的锁(lock)。该锁可以通过eaccelerator_unlock()函数解除在请求
结束时也会自动解锁。例如
<?phpeaccelerator_lock("count");eaccelerator_put("count",eaccelerator_get("count")+1));
?>eaccelerator_unlock($lock)
解除指定名称的锁(lock)。eaccelerator_set_session_handlers()
安装eAccelerator session句柄。
从PHP4.2.0以后您可以通过设置php. ini中的
"session.save_handler=eaacelerator"
安装eAccelerator句柄。
eaccelerator_cache_output($key,$eval_code,$ttl=0)
在共享内存中缓存$eval_code的输出缓存$ttl秒。
可以调用mmcach_rm()函数删除相同$key的输出。例如
<?php eaccelerator_cache_output('test' , 'echo time(); phpinfo();' ,30);?>eaccelerator_cache_result($key,$eval_code,$ttl=0)
在共享内存中缓存$eval_code的结果缓存$ttl秒。
可以调用mmcach_rm()函数删除相同$key的结果。例如
<?php eaccelerator_cache_output('test' , 'time()."Hel lo"; ' ,30);?>eaccelerator_cache_page($key,$ttl=0)
缓存?
imidc怎么样?imidc彩虹数据或彩虹网络现在促销旗下日本多IP站群独立服务器,原价159美元的机器现在只需要88美元,而且给13个独立IPv4,30Mbps直连带宽,不限制月流量!IMIDC又名为彩虹数据,rainbow cloud,香港本土运营商,全线产品都是商家自营的,自有IP网络资源等,提供的产品包括VPS主机、独立服务器、站群独立服务器等,数据中心区域包括香港、日本、台湾、美国和南非...
之前分享过很多次CloudCone的信息,主要是VPS主机,其实商家也提供独立服务器租用,同样在洛杉矶MC机房,分为两种线路:普通优化线路及CN2 GIA,今天来分享下商家的CN2 GIA线路独立服务器产品,提供15-100Mbps带宽,不限制流量,可购买额外的DDoS高防IP,最低每月82美元起,支持使用PayPal或者支付宝等付款方式。下面分享几款洛杉矶CN2 GIA线路独立服务器配置信息。配...
ProfitServer已开启了黑色星期五的促销活动,一直到本月底,商家新加坡、荷兰、德国和西班牙机房VPS直接5折,无码直购最低每月2.88美元起,不限制流量,提供IPv4+IPv6。这是一家始于2003年的俄罗斯主机商,提供虚拟主机、VPS、独立服务器、SSL证书、域名等产品,可选数据中心包括俄罗斯、法国、荷兰、美国、新加坡、拉脱维亚、捷克、保加利亚等多个国家和地区。我们随便以一个数据中心为例...