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 相关文章推荐
浅析php面向对象public private protected 访问修饰符
Jun 30 PHP
PHP编程风格规范分享
Jan 15 PHP
php像数组一样存取和修改字符串字符
Mar 21 PHP
php生成静态页面的简单示例
Apr 17 PHP
destoon找回管理员密码的方法
Jun 21 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
Jun 21 PHP
详解js异步文件加载器
Jan 24 PHP
ThinkPHP 模板substr的截取字符串函数详解
Jan 09 PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 PHP
Thinkphp5行为使用方法汇总
Dec 21 PHP
PHP中__set()实例用法和基础讲解
Jul 23 PHP
Thinkphp5框架异常处理操作实例分析
Jun 03 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
多数据表共用一个页的新闻发布
2006/10/09 PHP
php格式化金额函数分享
2015/02/02 PHP
PHP反射实际应用示例
2019/04/03 PHP
PHP解密支付宝小程序的加密数据、手机号的示例代码
2021/02/26 PHP
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
jQuery对象的selector属性用法实例
2014/12/27 Javascript
jQuery中:visible选择器用法实例
2014/12/30 Javascript
jQuery实现跨域iframe接口方法调用
2015/03/14 Javascript
JS控制层作圆周运动的方法
2016/06/20 Javascript
Bootstrap Metronic完全响应式管理模板之菜单栏学习笔记
2016/07/08 Javascript
jQuery中delegate()方法的用法详解
2016/10/13 Javascript
如何利用JQuery实现从底部回到顶部的功能
2016/12/27 Javascript
JavaScript实现随机数生成器(去重)
2017/10/13 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
Vue中axios拦截器如何单独配置token
2019/12/27 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
python使用心得之获得github代码库列表
2014/06/25 Python
Python中处理时间的几种方法小结
2015/04/09 Python
深入理解Python装饰器
2016/07/27 Python
Python类属性的延迟计算
2016/10/22 Python
目前最全的python的就业方向
2018/06/05 Python
对python的bytes类型数据split分割切片方法
2018/12/04 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
2019/06/19 Python
12个步骤教你理解Python装饰器
2019/07/01 Python
Django在pycharm下修改默认启动端口的方法
2019/07/26 Python
2014年两会学习心得体会
2014/03/10 职场文书
高中教师评语大全
2014/04/25 职场文书
学习雷锋月活动总结
2014/07/03 职场文书
教师民族团结演讲稿
2014/08/27 职场文书
土木工程专业本科生求职信
2014/10/01 职场文书
公司庆典欢迎词
2015/01/26 职场文书
银行保安拾金不昧表扬稿
2015/05/05 职场文书
《植物妈妈有办法》教学反思
2016/02/23 职场文书
python数据库批量插入数据的实现(executemany的使用)
2021/04/30 Python
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
2021/06/08 Python
Axios代理配置及封装响应拦截处理方式
2022/04/07 Vue.js