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+MSSQL分页的例子
Oct 09 PHP
php读取3389的脚本
May 06 PHP
PHP处理JSON字符串key缺少双引号的解决方法
Sep 16 PHP
PHP生成唯一订单号的方法汇总
Apr 16 PHP
PHP线程的内存回收问题
Jul 08 PHP
PHP实现带重试功能的curl连接示例
Jul 28 PHP
PHP递归删除多维数组中的某个值
Apr 17 PHP
PHP小白必须要知道的php基础知识(超实用)
Oct 10 PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 PHP
PHP count()函数讲解
Feb 03 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
Mar 26 PHP
深入理解PHP+Mysql分布式事务与解决方案
Dec 03 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&MYSQL服务器配置说明
2006/10/09 PHP
PHP 将逗号、空格、回车分隔的字符串转换为数组的函数
2012/06/07 PHP
Laravel5中contracts详解
2015/03/02 PHP
Yii2框架中日志的使用方法分析
2017/05/22 PHP
拖动Html元素集合 Drag and Drop any item
2006/12/22 Javascript
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
2013/11/05 Javascript
jquery和css3实现的炫酷时尚的菜单导航
2014/09/01 Javascript
jQuery中:enabled选择器用法实例
2015/01/04 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
2015/11/18 Javascript
bootstrap3 兼容IE8浏览器!
2016/05/02 Javascript
Jquery对新插入的节点 绑定Click事件失效的解决方法
2016/06/02 Javascript
mvvm双向绑定机制的原理和实现代码(推荐)
2016/06/07 Javascript
js实现碰撞检测特效代码分享
2016/10/16 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
微信小程序 页面跳转传值实现代码
2017/07/27 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
jquery图片预览插件实现方法详解
2019/07/18 jQuery
基于vue和bootstrap实现简单留言板功能
2020/05/30 Javascript
[05:35]DOTA2英雄梦之声_第13期_拉比克
2014/06/21 DOTA
[02:36]DOTA2上海特锦赛 回忆电竞生涯的重要瞬间
2016/03/25 DOTA
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
python logging添加filter教程
2019/12/24 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
2020/02/25 Python
tensorflow2.0的函数签名与图结构(推荐)
2020/04/28 Python
python中get和post有什么区别
2020/06/19 Python
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
仓库门卫岗位职责
2013/12/22 职场文书
学雷锋月活动总结
2014/04/25 职场文书
内乡县衙导游词
2015/02/05 职场文书
学习党章心得体会2016
2016/01/15 职场文书
小学语文新课改心得体会
2016/01/22 职场文书
重温经典:乔布斯在斯坦福大学的毕业演讲(双语)
2019/08/26 职场文书
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android
spring boot中nativeQuery的用法
2021/07/26 Java/Android