eAccelerator的安装与使用详解

2015-01-24信息快讯网

本篇文章是对eAccelerator的安装与使用进行了详细的分析介绍,需要的朋友参考下

一、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 Calender(日历)代码分享
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
codeigniter使用技巧批量插入数据实例方法分享
php-perl哈希算法实现(times33哈希算法)
PHP连接SQLServer2005方法及代码
php使用filter过滤器验证邮箱 ipv6地址 url验证
php calender(日历)二个版本代码示例(解决2038问题)
php安装xdebug/php安装pear/phpunit详解步骤(图)
解决file_get_contents无法请求https连接的方法
PHP获取MAC地址的具体实例
Server.HTMLEncode让代码在页面里显示为源代码
PHP数据库链接类(PDO+Access)实例分享
php实现memcache缓存示例讲解
PHP上传文件时文件过大$_FILES为空的解决方法
php用header函数实现301跳转代码实例
php堆排序(heapsort)练习
php生成EAN_13标准条形码实例
三种php连接access数据库方法
php foreach循环中使用引用的问题
PHP APC的安装与使用详解
探讨Hessian在PHP中的使用分析
深入PHP中的HashTable结构详解
基于PHP输出缓存(output_buffering)的深入理解
php缓冲 output_buffering的使用详解
win7+apache+php+mysql环境配置操作详解
linux环境apache多端口配置虚拟主机的方法深入介绍
深入apache host的配置详解
探讨PHP使用eAccelerator的API开发详解
windows环境下php配置memcache的具体操作步骤
探讨:使用XMLSerialize 序列化与反序列化
PHP rawurlencode与urlencode函数的深入分析
深入for,while,foreach遍历时间比较的详解
探讨如何使用SimpleXML函数来加载和解析XML文档
探讨php中header的用法详解
深入eAccelerator与memcached的区别详解
基于header的一些常用指令详解
©2014-2024 dbsqp.com