php加速器eAccelerator的配置参数、API详解


Posted in PHP onMay 05, 2014

它还能够对脚本进行优化以便加速它们的执行速度。利用eAccelerator可以减少服务器的负载并提高PHP代码的执行时间。

eAccelerator配置选项:

zend_extension_ts=”X:Appphp-5.2.13-Win32exteaccelerator.dll”
eaccelerator.shm_size=”32″
eaccelerator.cache_dir=”X:Appphp-5.2.13-Win32 emp”
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_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
zend_extension_manager.optimizer_ts=”X:AppendendOptimizer-3.3.0libOptimizer-3.3.0″
zend_extension_ts=”X:AppendendOptimizer-3.3.0libendExtensionManager.dll”
zend_optimizer.optimization_level=”512″

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″ 为关闭。默认值为 “1″。

eaccelerator.debug

开启或关闭调试日志记录。”1″ 为开启,”0″ 为关闭。默认值为 “0″。

eaccelerator.check_mtime

开启或关闭 PHP 文件改动检查。”1″ 为开启,”0″ 为关闭。如果您想要在修改后重新编译 PHP程序则需要设置为 “1″。默认值为 “1″。

eaccelerator.filter

判断哪些 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.keys
eaccelerator.sessions
eaccelerator.content

判断哪些键(keys)、session 数据和内容将被缓存。可用参数值为:

1.“shm_and_disk” ? 同时在共享内存和磁盘中缓存数据(默认值);
2.“shm” ? 如果共享内存用尽或者数据容量大于 “eaccelerator.shm_max”,则在共享内存或磁盘中缓存数据;
3.“shm_only” ? 仅在共享内存中缓存数据;
4.“disk_only” ? 仅在磁盘中缓存数据;
5.“none” ? 禁止缓存数据。

eAccelerator应用程序接口(API):

eaccelerator_put($key, $value, $ttl=0)

将 $value 存储在共享内存中,并存储 $tll 秒。

eaccelerator_get($key)

从共享内存中返回 eaccelerator_put() 函数所存储的缓存数值,如果不存在或者已经过期,则返回 null。

eaccelerator_rm($key)

从共享内存中删除 $key。

eaccelerator_gc()

删除所有过期的键(keys)

eaccelerator_lock($lock)

创建一个指定名称的锁(lock)。该锁可以通过 eaccelerator_unlock() 函数解除,在请求结束时也会自动解锁。例如:

eaccelerator_unlock($lock)

解除指定名称的锁(lock)。

eaccelerator_set_session_handlers()

安装 eAccelerator session 句柄。从 PHP 4.2.0 以后,您可以通过设置 php.ini 中的 “session.save_handler=eaacelerator” 安装 eAccelerator 句柄。

eaccelerator_cache_output($key, $eval_code, $ttl=0)

在共享内存中缓存 $eval_code 的输出,缓存 $ttl 秒。可以调用 mmcach_rm() 函数删除相同 $key 的输出。例如:

eaccelerator_cache_result($key, $eval_code, $ttl=0)

在共享内存中缓存 $eval_code 的结果,缓存 $ttl 秒。可以调用 mmcach_rm() 函数删除相同 $key 的结果。例如:

eaccelerator_cache_page($key, $ttl=0)

缓存整个页面,且缓存 $ttl 秒。例如:

eaccelerator_rm_page($key)

从缓存中删除由 eaccelerator_cache_page() 函数创建的相同 $key 的页。

eaccelerator_encode($filename)

返回 $filename 文件经过编译后的编码。

eaccelerator_load($code)

加载被 eaccelerator_encode() 函数编码过的脚本。

PHP 相关文章推荐
php md5下16位和32位的实现代码
Apr 09 PHP
php中获取关键词及所属来源搜索引擎名称的代码
Feb 15 PHP
关于PHP中Object对象的笔记分享
Jun 28 PHP
PHP数组传递是值传递而非引用传递概念纠正
Jan 31 PHP
简单实现限定phpmyadmin访问ip的方法
Mar 05 PHP
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
Jan 22 PHP
php商品对比功能代码分享
Sep 24 PHP
PHP5.4起内置web服务器使用方法
Aug 09 PHP
PHP实现的日历功能示例
Sep 01 PHP
php基于Redis消息队列实现的消息推送的方法
Nov 28 PHP
php项目中类的自动加载实例讲解
Sep 12 PHP
PHP dirname(__FILE__)原理及用法解析
Oct 28 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
May 05 #PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
May 04 #PHP
PHP图片裁剪函数(保持图像不变形)
May 04 #PHP
PHP_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法
May 04 #PHP
PHP按行读取文件时删除换行符的3种方法
May 04 #PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 #PHP
PHP CURL获取返回值的方法
May 04 #PHP
You might like
十天学会php(3)
2006/10/09 PHP
分享PHP守护进程类
2015/12/30 PHP
thinkPHP中配置的读取与C方法详解
2016/12/05 PHP
利用PHP_XLSXWriter代替PHPExcel的方法示例
2017/07/16 PHP
一些常用的Javascript函数
2006/12/22 Javascript
JavaScript执行效率与性能提升方案
2012/12/21 Javascript
javascript 利用Image对象实现的埋点(某处的点击数)统计
2012/12/28 Javascript
json数据的列循环示例
2013/09/06 Javascript
jquery得到font-size属性值实现代码
2013/09/30 Javascript
js的正则test,match,exec详细解析
2014/01/29 Javascript
推荐一个封装好的getElementsByClassName方法
2014/12/02 Javascript
浅谈javascript中的闭包
2015/05/13 Javascript
js实现索引图片切换效果
2015/11/21 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
2017/06/20 Javascript
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
vue-cli3.0 环境变量与模式配置方法
2018/11/08 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
使用Vue+Django+Ant Design做一个留言评论模块的示例代码
2020/06/01 Javascript
[02:53]DOTA2英雄基础教程 山岭巨人小小
2013/12/09 DOTA
RC4文件加密的python实现方法
2015/06/30 Python
Python二分查找详解
2015/09/13 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
对Django 中request.get和request.post的区别详解
2019/08/12 Python
Python 实现一个手机号码获取妹子名字的功能
2019/09/25 Python
Tensorflow实现部分参数梯度更新操作
2020/01/23 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
python中的垃圾回收(GC)机制
2020/09/21 Python
python搜索算法原理及实例讲解
2020/11/18 Python
Django 权限管理(permissions)与用户组(group)详解
2020/11/30 Python
意向书范文
2014/03/31 职场文书
计算机多媒体专业自荐信
2014/07/04 职场文书
金融系毕业生自荐书
2014/07/08 职场文书
综合管理员岗位职责
2015/02/11 职场文书
奖学金主要事迹范文
2015/11/04 职场文书