共计 4286 个字符,预计需要花费 11 分钟才能阅读完成。
程序说明
eAccelerator 是一个自由开放源码 php 加速器,优化和动态内容缓存,提高了 php 脚本的缓存性能,使得 PHP 脚本在编译的状态下,对服务器的开销几乎为零。它还有对脚本起优化作用,以加快其执行效率。使您的 PHP 程序代码执效率能提高 1 -10 倍。eAccelerator 本身的开销也是极少的。
1、程序下载
### 服务器上之间下载 ###
[root@web-yv3 ~]# wget https://github.com/eaccelerator/eaccelerator/tarball/master
[root@web-yv3 ~]# ll
-rw-r–r– 1 root root 131579 Nov 29 17:34 master #此文件就是下载的 eAccelerator 的安装包,勿惊勿惊!!
### 官网自行下载 ###
http://eaccelerator.net/
eaccelerator-eaccelerator-42067ac.tar.gz
通过 rz 上传或 ftp 上传!!
2、编译安装加速器
2.1、解压程序
[root@web-yv3 ~]#tar xf master #常规方式解压
[root@web-yv3 ~]# ls
eaccelerator-eaccelerator-42067ac master
[root@web-yv3 ~]# cd eaccelerator-eaccelerator-42067ac #已经露出了庐山真面目!
2.2、查看 phpize
phpize 是用来扩展 php 扩展模块的,通过 phpize 可以建立 php 的外挂模块。
[root@web-yv3 ~]# cd eaccelerator-eaccelerator-42067ac
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# whereis phpize
phpize: /usr/bin/phpize /usr/share/man/man1/phpize.1.gz
2.3、执行 phpize
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# /usr/bin/phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
2.4、查看 php-config
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# whereis php-config
php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz
2.5、编译安装
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# ./configure –enable-eaccelerator=shared –with-php-config=/usr/bin/php-config
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# make
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# make install
Installing shared extensions: /usr/lib64/php/modules/ ## 记录此安装位置
+——————————————————-+
| !!! Attention !!! |
| |
| For disk cache users (using eaccelerator.shm_only=0): |
| |
| Please remember to empty your eAccelerator disk cache |
| when upgrading, otherwise things will break! |
+——————————————————-+
2.6、设置配置文件
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# vi /etc/php.ini
extension=”/usr/lib64/php/modules/eaccelerator.so”
eaccelerator.shm_size=”64″
eaccelerator.cache_dir=”/data/eaccelerator_cache”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=””
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
2.7、配置文件解析
extension=”/usr/lib64/php/modules/eaccelerator.so” #加载 eaccelerator 模块
eaccelerator.shm_size=”64″ #用来设置分配给 eAccelerator 用来缓存 php 的最大共享内存,单位是 mb,如果设置为 0,就使用默认大小。
eaccelerator.cache_dir=”/data/eaccelerator_cache” #用来设置硬盘缓存目录。eA 用来存放预编译代码,session 数据,内容和用户入口。默认值是 ”/tmp/eaccelerator”。
eaccelerator.enable=”1″ #用来设置是否启用或禁用 eAccelerator,设置 1 为启用,设置 0 为禁用。
eaccelerator.optimizer=”1″ #开启或关闭优化,用户加速代码的执行。1 为开启,0 为关闭,优化仅仅在脚本被编译时候发生并且是在被缓存之前。
eaccelerator.check_mtime=”1″ #在每次命中的时候 Eaccelerator 都会检查脚本的修改时间来判断是不是脚本发生的变化来决定是否需要重新编译。在每次命中的时候 Eaccelerator 都会检查脚本的修改时间来判断是不是脚本发生的变化来决定是否需要重新编译。
eaccelerator.debug=”0″ #开启关闭 debug 日志。如果设置为 1,将打印很多文件命中的信息到日志中。
eaccelerator.filter=”” #用来决定哪个 php 文件被缓存。可以通过使用通配符(比如 ”*.php *.phtml”)来匹配需要缓存的 php 脚本。如果以 ”!” 开头,表示不匹配,这个参数默认是空,比如定义了 ”!/home” 的话,那所有 /home 目录的脚本都不会被缓存。如果要定义多个匹配,使用空格或者制表符分开,而不是逗号。
eaccelerator.shm_max=”0″ #设置内存缓存可以缓存文件的最大值
eaccelerator.shm_ttl=”0″ #当 eAcelerator 没有空余的共享内存的时候,就会把最少 shm_ttl 设置的秒数没访问过的脚本从缓存中释放掉,默认值是 0,表示 eA 不会释放任何缓存。
eaccelerator.shm_prune_period=”0″ #当没有足够的内存用来缓存的时候,eA 会在上次清除缓存的时间超过了 shm_prune_period 设定的秒数时再次尝试清除过期的脚本。默认值为 0,eA 将不从缓存中清除过期的脚本。
eaccelerator.shm_only=”0″ #启用或者禁用磁盘缓存。这个选项对 session 数据和内容的缓存没效果。默认值是 0,允许 eA 使用磁盘和内存进行缓存。
eaccelerator.compress=”1″ #当使用 eaccelerator_content_* 的 api 时,eA 可以在缓存前对内容进行压缩。默认值为 1 表示启用,禁用为 0。
eaccelerator.compress_level=”9″ #内容缓存的压缩等级。默认值为 9,是最大压缩级别。
2.8、创建并授权缓存目录
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# mkdir /data/eaccelerator_cache
[root@web-yv3 eaccelerator-eaccelerator-42067ac]# chown deploy.deploy eaccelerator_cache/ -R
2.9、重启 PHP
[root@web-yv3 ~]# service php-fpm restart
2.10、通过 phpinfo 查看
[root@web-yv3 html]# vi phpinfo.php
<?php
echo phpinfo();
?>
3、管理缓存
3.1、通过服务器管理 cache
[root@web-yv3 eaccelerator_cache]# ll
drwx—— 18 deploy deploy 4096 Nov 29 19:41 500
3.2、通过内置页面管理 cache
eAccelerator 控制面板的地址,安装包里有一个 control.php 文件,把它复制到网站的任意目录,可以用它查看和管理,这个必须指定,否则查看缓存内容的时候会出错,访问时候默认的用户名是:admin,密码:eAccelerator