php xcache 方法,PHP缓存工具XCache安装与使用方法详解

本文实例讲述了PHP缓存工具XCache安装与使用方法。分享给大家供大家参考,具体如下:

XCache是另外一种在PHP中使用的Opcode缓存工具。像APC一样,XCache在共享内存中存储Opcode,并使用缓存的Opcode来响应对PHP脚步的请求。

在Windows系统上安装XCache

1、在http://xcache.lighttpd.net/pub/ReleaseArchive 根据你的PHP版本,下载对应的软件包。

2、解压后把php_xcache.dll复制到ext目录中

3、在PHP.ini文件加入

[XCache]

Zend_extension_ts=php_xcache.dall

在Liunx系统上安装XCache

wget http://xcache.lighttpd.net/pub/Releases/1.3.2/xcache-1.3.2.tar.gz

tar -zxvf xcache-1.3.2.tar.gz

cd xcache-1.3.2

phpize

./configure --enable-xcache

make

make install doc.codesky.net

打开php.ini文件,增加如下代码:

[xcache-common]

; change me - 64 bit php => /usr/lib64/php/modules/xcache.so

; 32 bit php => /usr/lib/php/modules/xcache.so

zend_extension = /usr/lib64/php/modules/xcache.so

[xcache.admin]

xcache.admin.auth = On

xcache.admin.user = "mOo"

; xcache.admin.pass = md5($your_password)

xcache.admin.pass = ""

[xcache]

xcache.shm_scheme = "mmap"

xcache.size = 32M

xcache.count = 1

xcache.slots = 8K

xcache.ttl = 3600

xcache.gc_interval = 300

; Same as aboves but for variable cache

; If you don't know for sure that you need this, you probably don't

xcache.var_size = 0M

xcache.var_count = 1

xcache.var_slots = 8K

xcache.var_ttl = 0

xcache.var_maxttl = 0

xcache.var_gc_interval = 300

; N/A for /dev/zero

xcache.readonly_protection = Off

xcache.mmap_path = "/dev/zero"

xcache.cacher = On

xcache.stat = On

注意修改zend_extension = /usr/lib64/php/modules/xcache.so为正确的路径。

XCache设置

xcache.admin.user (String) 管理认证用户名。默认设置"mOo"

xcache.admin.pass (String)管理认证密码。默认设置为""。此值应该是MD5(你的密码)

xcache.admin.enable_auth (String)启用或禁用管理站点的身份验证。默认值"on"

xcache.test (String)启用或禁用测试功能

xcache.coredump_dir (String)在遇到故障时,放置核心转储的目录。必须是PHP可写入的目录。保留为空带表禁用

xcache.cacher (Boolean) 启用或禁用Opcode 缓存。默认开启

xcache.size (int)所有共享缓存的大小。如果为0,缓存将无法使用

xcache.count (int)缓存被分割的“块”数。默认值1

xcache.slots 哈希表提示。数字越大,哈希表内进行的搜索速度就越快。此值越高,所需内存也越多

xcache.ttl (int)Opcode文件的生存时间。0=无限期缓存

xcache.gc_interval (秒) 触发垃圾回收的时间间隔。默认0

xcache.var_size (int)变量大小

xcache.var_count (int)变量个数

xcache.var_slots 可变数据槽设置

xcache.var_ttl (秒)可变数据的生存时间,默认设置0

xcache.var_maxttl (秒)处理变量时最大的生存时间

xcache.var_gc_interval (秒)垃圾回收的生存时间

xcache.readonly_protection (Boolean)启用ReadonlyProtection时可用。

xcache.mmap_path (String)用于只读保护的文件路径。这将限制两个PHP组共享同一个/tmp/cache目录

xcache.optimizer (Boolean)启用或禁用优化 默认禁用

xcache.coverager (Boolean)启用覆盖范围数据集合。

xcache.coveragerdump_directory (String)放置数据集合信息的目录位置。默认使用目录/tmp/pcovis

实例

引用www.initphp.com 框架 Xcache类

if (!defined('IS_INITPHP')) exit('Access Denied!');

/*********************************************************************************

* InitPHP 2.0 国产PHP开发框架 Dao-XCACHE缓存

*-------------------------------------------------------------------------------

* 版权所有: CopyRight By initphp.com

* 您可以自由使用该源码,但是在使用过程中,请保留作者信息。尊重他人劳动成果就是尊重自己

*-------------------------------------------------------------------------------

* $Author:zhuli

* $Dtime:2011-10-09

***********************************************************************************/

class xcacheInit {

/**

* Xcache缓存-设置缓存

* 设置缓存key,value和缓存时间

* @param string $key KEY值

* @param string $value 值

* @param string $time 缓存时间

*/

public function set_cache($key, $value, $time = 0) {

return xcache_set($key, $value, $time);;

}

/**

* Xcache缓存-获取缓存

* 通过KEY获取缓存数据

* @param string $key KEY值

*/

public function get_cache($key) {

return xcache_get($key);

}

/**

* Xcache缓存-清除一个缓存

* 从memcache中删除一条缓存

* @param string $key KEY值

*/

public function clear($key) {

return xcache_unset($key);

}

/**

* Xcache缓存-清空所有缓存

* 不建议使用该功能

* @return

*/

public function clear_all() {

$tmp['user'] = isset($_SERVER['PHP_AUTH_USER']) ? null : $_SERVER['PHP_AUTH_USER'];

$tmp['pwd'] = isset($_SERVER['PHP_AUTH_PW']) ? null : $_SERVER['PHP_AUTH_PW'];

$_SERVER['PHP_AUTH_USER'] = $this->authUser;

$_SERVER['PHP_AUTH_PW'] = $this->authPwd;

$max = xcache_count(XC_TYPE_VAR);

for ($i = 0; $i < $max; $i++) {

xcache_clear_cache(XC_TYPE_VAR, $i);

}

$_SERVER['PHP_AUTH_USER'] = $tmp['user'];

$_SERVER['PHP_AUTH_PW'] = $tmp['pwd'];

return true;

}

/**

* Xcache验证是否存在

* @param string $key KEY值

*/

public function exists($key) {

return xcache_isset($key);

}

}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值