eAccelerator的安装与使用详解


Posted in PHP onJune 13, 2013

一、PHPeAccelerator安装
去https://github.com/eaccelerator/eaccelerator/downloads下载最新版安装包,解压安装包,进入解压后的文件夹目录,

编译:

 $PHP_PREFIX/bin/phpize
./configure--enable-shared --with-php-config=$PHP_PREFIX/bin/php-config
make

安装:
makeinstall

修改php.ini:
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.filter=""
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"

新建缓存目录:
mkdir/tmp/eaccelerator
chmod0777 /tmp/eaccelerator

二、PHPeAccelerator配置选项
eaccelerator.shm_size
用来设置分配给eAccelerator用来缓存php的最大共享内存,单位是mb,如果设置为0,就使用默认大小。在linux系统中一个process能分配的最大内存是由/proc/sys/kernel/shmmax限制的,所以如果eA设置的内存超出了这个值,eA在初始化的时候会失败。shmmax的单位是字节(bytes

eaccelerator.cache_dir
用来设置硬盘缓存目录。eA用来存放预编译代码,session数据,内容和用户入口。默认值是"/tmp/eaccelerator"

eaccelerator.enable
用来设置是否启用或禁用eAccelerator,设置1为启用,设置0为禁用。

eaccelerator.optimizer
开启或关闭优化,用户加速代码的执行。1为开启,0为关闭,优化仅仅在脚本被编译时候发生并且是在被缓存之前。

eaccelerator.debug
开启关闭debug日志。如果设置为1,将打印很多文件命中的信息到日志中。这个在排查eAccelerator的时候很有用。

eaccelerator.check_mtime
在每次命中的时候Eaccelerator都会检查脚本的修改时间来判断是不是脚本发生的变化来决定是否需要重新编译。尽管检查比打开文件并编译要快,但仍然会带来一些开销的,因为每次都会有状态调用要完成。这个配置可以关闭这个检查。不过关闭检查带来的不利就是每次更新了文件需要认为手动的清除cache。默认检查是启用的,1是启用,0是禁用。

eaccelerator.filter
用来决定哪个php文件被缓存。可以通过使用通配符(比如"*.php*.phtml")来匹配需要缓存的php脚本。如果以"!"开头,表示不匹配,这个参数默认是空,可以缓存所有编译好的php脚本需要注意的是eaccelerator.filter并不是基于URL工作的,而是基于文件的绝对路径,比如定义了"!/home"的话,那所有/home目录的脚本都不会被缓存。如果要定义多个匹配,使用空格或者制表符分开,而不是逗号。

eaccelerator.shm_ttl
eAcelerator没有空余的共享内存的时候,就会把最少shm_ttl设置的秒数没访问过的脚本从缓存中释放掉,默认值是0,表示eA不会释放任何缓存。

eaccelerator.shm_prune_period
当没有足够的内存用来缓存的时候,eA会在上次清除缓存的时间超过了shm_prune_period设定的秒数时再次尝试清除过期的脚本。默认值为0eA将不从缓存中清除过期的脚本。

eaccelerator.shm_only
启用或者禁用磁盘缓存。这个选项对session数据和内容的缓存没效果。默认值是0,允许eA使用磁盘和内存进行缓存。

eaccelerator.allowed_admin_path
启用或者禁用磁盘缓存。这个选项对session数据和内容的缓存没效果。默认值是0,允许eA使用磁盘和内存进行缓存。

三、PHPeAccelerator监控与管理
eAccelerator提供了control.php,用于监控与管理eAccelerator缓存。将control.php放到网站目录中,修改账号、密码,即可通过浏览器监控与管理eAccelerator缓存。
control.php第23、24行:

$user= "admin";
$pw= "password";
PHP 相关文章推荐
自己动手做一个SQL解释器
Oct 09 PHP
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
Sep 02 PHP
php 获取select下拉列表框的值
May 08 PHP
8个必备的PHP功能实例代码
Oct 27 PHP
php中mkdir函数用法实例分析
Nov 15 PHP
php中ftp_chdir与ftp_cdup函数用法
Nov 18 PHP
PHP网站建设的流程与步骤分享
Sep 25 PHP
php实现的一段简单概率相关代码
May 30 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
Jun 17 PHP
thinkPHP5框架分页样式类完整示例
Sep 01 PHP
PHP Trait功能与用法实例分析
Jun 03 PHP
PHP实现抽奖功能实例代码
Jun 30 PHP
探讨Hessian在PHP中的使用分析
Jun 13 #PHP
深入PHP变量存储的详解
Jun 13 #PHP
深入PHP中的HashTable结构详解
Jun 13 #PHP
基于PHP输出缓存(output_buffering)的深入理解
Jun 13 #PHP
php缓冲 output_buffering的使用详解
Jun 13 #PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 #PHP
php启用zlib压缩文件的配置方法
Jun 12 #PHP
You might like
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
js停止输出代码
2008/07/20 Javascript
Javascript字符串对象的常用方法简明版
2014/06/26 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
2016/08/05 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
VUE 3D轮播图封装实现方法
2018/07/03 Javascript
详解easyui 切换主题皮肤
2019/04/04 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
python使用递归解决全排列数字示例
2014/02/11 Python
以一段代码为实例快速入门Python2.7
2015/03/31 Python
使用Python中的cookielib模拟登录网站
2015/04/09 Python
Python 常用string函数详解
2016/05/30 Python
12步入门Python中的decorator装饰器使用方法
2016/06/20 Python
查找python项目依赖并生成requirements.txt的方法
2018/07/10 Python
python 调用钉钉机器人的方法
2019/02/20 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
Python range与enumerate函数区别解析
2020/02/28 Python
python文件排序的方法总结
2020/09/13 Python
基于Python实现全自动下载抖音视频
2020/11/06 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
如何用Django处理gzip数据流
2021/01/29 Python
HTML5 video 上传预览图片视频如何设置、预览视频某秒的海报帧
2018/08/28 HTML / CSS
物流专业大学生职业生涯规划书范文
2014/01/15 职场文书
银行开业庆典方案
2014/02/06 职场文书
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
舞蹈教育学专业自荐信
2014/06/15 职场文书
初中学习计划书范文
2014/09/15 职场文书
2014年十八届四中全会思想汇报范文
2014/10/17 职场文书
2015毕业实习推荐信
2015/03/23 职场文书
创业计划书之冷饮店
2019/09/27 职场文书
安装pytorch时报sslerror错误的解决方案
2021/05/17 Python
25张裸眼3D图片,带你重温童年的记忆,感受3D的魅力
2022/02/06 杂记
教你如何让spark sql写mysql的时候支持update操作
2022/02/15 MySQL
pytest实现多进程与多线程运行超好用的插件
2022/07/15 Python