IT学习者 | 文章大全 | 技术文档 | 桌面壁纸 | 实用查询 | 网络电台 | 成语 | 歇后语 | 网址 | 下载 | 周公解梦 | 生日密码 | 电视剧365 | Flash
 您现在的位置: IT学习者 >> 文章大全 >> 网络编程 >> PHP

PHP缓存加速器:eAccelerator

【 作者:Nanu翻译    来源:网络  更新时间:2007-10-23 | 字体:
配置选项

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 数据和内容将被缓存。可用参数值为:
"shm_and_disk" - 同时在共享内存和磁盘中缓存数据(默认值);
"shm" - 如果共享内存用尽或者数据容量大于 "eaccelerator.shm_max"
则在共享内存或磁盘中缓存数据;
"shm_only" - 仅在共享内存中缓存数据;
"disk_only" - 仅在磁盘中缓存数据;
"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() 函数解除,在请求
结束时也会自动解锁。例如:
<?php
eaccelerator_lock("count");
eaccelerator_put("count",eaccelerator_get("count")+1));
?>

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 的输出。例如:
<?php eaccelerator_cache_output('test', 'echo time(); phpinfo();', 30); ?>

eaccelerator_cache_result($key, $eval_code, $ttl=0)
在共享内存中缓存 $eval_code 的结果,缓存 $ttl 秒。
可以调用 mmcach_rm() 函数删除相同 $key 的结果。例如:
<?php eaccelerator_cache_output('test', 'time()." Hello";', 30); ?>

eaccelerator_cache_page($key, $ttl=0)
缓存整个页面,且缓存 $ttl 秒。例如:
<?php
eaccelerator_cache_page($_SERVER['PHP_SELF'].'?GET='.serialize($_GET),30);
echo time();
phpinfo();
?>

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

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

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

WEB 界面

可以通过 eaccelerator.php 进行基于 WEB 界面的管理。当然,您需要将该文件存储于您的 WEB 站点
目录中。出于安全原因,建议您对该文件进行安全控制,保证只有本地 IP 才能读取该文件。

从 2.3.18 版本开始,管理界面可以进行密码保护。从终端命令行运行 eaccelerator_password.php 并
按照以下步骤生成密码:

$ php -q eaccelerator_password.php
更改 eAccelerator WEB 管理界面密码。(eaccelerator.php)

Enter admin name:admin
New admin password: eaccelerator
Retype new admin password: eaccelerator

在 php.ini 中添加以下内容,并且重新启动 WEB 服务:
eaccelerator.admin.name="admin"
eaccelerator.admin.password="$1$0ScD9gkb$nOEmFerNMvQ576hELeLrG0"

如果在受 HTTPD 密码保护的目录中存放 eaccelerator.php,则 eaccelerator 的管理员用户名和密码
必须一致。

联系我们

您可以联系我们以报告 BUGS、提问或者补丁。发送电子邮件给 Bart Vanbrabant
(zoeloelip at users.sourceforge.net)

文章共2页,当前在第2页 9 7 [1] [2] 8 :
相 关 文 章
相 关 软 件
没有相关下载
逃生 放生 黄玫瑰 想太多 那滋味 擦肩而过 放手去爱 北京欢迎你 依然在一起 吻得太逼真 感动天感动地 坐上火车去拉萨 怎么会狠心伤害我
心碎 冲动 小太阳 别碰我 蒲公英 千山万水 改变自己 一定要爱你 等爱的玫瑰 陷入爱里面 北极星的眼泪 最后一次的温柔 亲爱的那不是爱情
光荣 火花 坏女人 日不落 樱花草 为你写诗 独家记忆 夏天的味道 寂寞才说爱 忘不掉的伤 爱上你是个错 第三者的第三者 地球人都知道我爱你
假如 相思 是非题 有缘人 舍不得 我的答铃 死而无憾 外滩十八号 越爱越难过 123木头人 和寂寞说分手 爱上你是我的错 爱情里没有谁对谁错
加入收藏留言建议自助友情链接普通友情链接站长的Blog
版权所有   COPYRIGHT 2002-2008 ★IT学习者★ ALL RIGHTS RESERVED.