XCache 工程由 mOo 领队, 他也是 Lighttpd 的开发成员之一. Lighttpd 是最快的 Web 服务器应用程序之一, 并且超越 Apache 以及许多其他 Web 服务器. XCache 努力达到类似的效果.
目前最新的版本为XCache 3.2.0,它是php5全系列支持的,官方网站: http://xcache.lighttpd.net/
如果英文不好的朋友,可以点右边切换语言为中文。
首先下载最新的版本: http://xcache.lighttpd.net/pub/Releases/3.2.0/ 记得选择正确的版本。
下载解压后放到php下的ext目录下,然后打开php.ini 添加extension = php_xcache.dll
压缩包内还有一个中文版Xcache的php.ini的示范,还有就是一个查看Xcache及信息的程序.
注意xcache.admin.pass 用md5加密后存放
xcache.count可以根据你CPU的数设置,默认为1
xcache.slots缓存的文件/变量hash参考值,根据自己的实际情况可以设置
完成后,重新启动Apache服务。
代码如下:
;; 本文件只是例子, 请在 php.ini 里设置以便生效
[xcache-common]
;; 非 windows 例子:
extension = xcache.so
;; Windows 系统例子:
; extension = php_xcache.dll
[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = "mOo"
; xcache.admin.pass = md5($您的密码)
; 登录使用 $your_password下面的密码请用md5加密后填写到里面
xcache.admin.pass = ""
[xcache]
; 这里的多数选项仅在 ini 里可以修改, 这里列出的都是默认值, 除非另外说明
; 选择底层内存共享实现方案
xcache.shm_scheme = "mmap"
; 禁用: xcache.size=0
; 启用: xcache.size=64M 之类 (任意>0的值) 同时请注意您的系统 mmap 上限
xcache.size = 60M
; 建议设置为 cpu 数 (cat /proc/cpuinfo |grep -c processor)
xcache.count = 1
; 只是个 hash 参考值, 实际存储项目(php脚本/变量)可超过这个数字
xcache.slots = 8K
; 缓存项目的 ttl, 0=永久
xcache.ttl = 0
; 扫描过期项目的时间间隔, 0=不扫描, 其他值以秒为单位
xcache.gc_interval = 0
; 同上, 只是针对变量缓存设置
xcache.var_size = 4M
xcache.var_count = 1
xcache.var_slots = 8K
; xcache_*() 函数 ttl 参数的默认值
xcache.var_ttl = 0
; 限制 xcache_*() 函数 ttl 参数不超过此设置. 0=不限制
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
; /dev/zero 时无效
xcache.readonly_protection = Off
; 对于 *nix 系统, xcache.mmap_path 是文件路径而不是目录. (自动创建/覆盖)
; 如果您期望启用 ReadonlyProtection, 必须避免使用 "/dev/*", 可以使用类似 "/tmp/xcache"
; 不同 php 进程组不会共享同一个 /tmp/xcache
; 对于 Win32 系统, xcache.mmap_path=匿名MAP名字, 不是文件路径. 建议使用 XCache 字眼避免跟其他软件冲突
xcache.mmap_path = "/dev/zero"
; 仅在 XCache 异常时有用. 设置为空(禁用) 或者类似 "/tmp/phpcore/" (能被 php 写入文件)
xcache.coredump_directory = ""
; 仅用于 Windows. 除非 XCache 开发人员告诉你, 否则保持默认值
xcache.coredump_type = 0
; 异常时自动禁止缓存
xcache.disable_on_crash = Off
; 启用实验性功能 (如果有)
xcache.experimental = Off
; 以下是 Request 级可改设置. 可以 ini_set, .htaccess 等
xcache.cacher = On
xcache.stat = On
xcache.optimizer = Off
[xcache.coverager]
; 本功能开启后降低运行性能
; 仅在 xcache.coverager == On && xcache.coveragedump_directory == "非空值" 时本功能才会启用
; per request settings. 可以 ini_set, .htaccess 等
; 启用代码流程覆盖面信息采集以及 xcache_coverager_start/stop/get/clean() 等函数
xcache.coverager = Off
xcache.coverager_autostart = On
; 仅在 php ini 文件内设置
; 请确保本目录能被 coverage viewer 脚本读取 (注意 open_basedir)
xcache.coveragedump_directory = ""
然后查看phpinfo,看看Xcache是否已经生效。如下图
现在在web发布目录中新建一个目录如xcache,将官方的压缩包内的lib及htdocs目录放里面,
在浏览器输入http://127.0.0.1/xcache/htdocs/, 会弹出一个登陆的账号密码对话框,输入进去后,你就可以看到xcache的环境及配置,变量等等。。
但实际上Xcache不但能缓存变量,而且能缓存php文件,如果你的php环境中配置了Xcache扩展后,它会自动将每次给你访问的php文件都自动缓存。无需再额外的修改代码,十分的方便快捷,如下图的我只访问了phpmyadmin,Xcache官方的程序包就可以检测到phpmyadmin的cache列表。
代码很简单,带单例模式,可以直接在应用环境中使用,代码在php5.5.12中完美测试通过。
代码如下:
$c =new Cache_Xcache();
$c->set('key', 'aaaa123');
echo $c->get('key');
Cache_Xcache::getInstance()->set('key1', '999999999999999');
echo Cache_Xcache::getInstance()->get('key1');
/**------------------------------代码开始----------------------------------**/
class Cache_Xcache {
/**
* 单例模式实例化本类
*
* @var object
*/
protected static $_instance = null;
/**
* 默认的缓存策略
*
* @var array
*/
protected $_defaultOptions = array('expire' => 900);
/**
* 构造方法
*
* @access public
* @return boolean
*/
public function __construct() {
//分析xcache扩展模块 if (!extension_loaded('xcache')) {
die('The xcache extension to be loaded before use!');
}
return true;
}
/**
* 写入缓存
*
* @access public
*
* @param string $key 缓存key
* @param mixted $value 缓存值
* @param integer $expire 生存周期
*
* @return boolean
*/
public function set($key, $value, $expire = null) {
//参数分析 if (!$key) {
return false;
}
$expire = is_null($expire) ? $this->_defaultOptions['expire'] : $expire;
return xcache_set($key, $value, $expire);
}
/**
* 读取缓存,失败或缓存撒失效时返回 false
*
* @access public
*
* @param string $key 缓存key
*
* @return mixted
*/
public function get($key) {
//参数分析 if (!$key) {
return false;
}
return xcache_isset($key) ? xcache_get($key) : false;
}
/**
* 缓存一个变量到数据存储
*
* @access public
*
* @param string $key 数据key
* @param mixed $value 数据值
* @param int $expire 缓存时间(秒)
*
* @return boolean
*/
public function add($key, $value, $expire = null) {
//参数分析 if (!$key) {
return false;
}
$expire = is_null($expire) ? $this->_defaultOptions['expire'] : $expire;
return !xcache_isset($key) ? $this->set($key,$value,$expire) : false;
}
/**
* 删除指定的缓存
*
* @access public
*
* @param string $key 缓存Key
*
* @return boolean
*/
public function delete($key) {
//参数分析 if (!$key) {
return false;
}
return xcache_unset($key);
}
/**
* 清空全部缓存变量
*
* @access public
* @return boolean
*/
public function clear() {
return xcache_clear_cache(XC_TYPE_VAR, 0);
}
/**
* 单例模式
*
* 用于本类的单例模式(singleton)实例化
*
* @access public
* @return object
*/
public static function getInstance() {
if (!self::$_instance) {
self::$_instance = new self();
}
return self::$_instance;
}
}

IP地址冲突,这还算是比较常见的网络问题,最近被还在使用Win7系统的用户遇到了,当同一网络上的两台或多台设备分配了相同的IP地址时,就会发生IP地址冲突,这篇文章是本站给大家带来的解决IP地址冲突问题方法。方法一:1、按【Win+R】组合键,打开运行,并输入【cmd】命令,按【确定或回车】,可以快速打开命令提示符窗口(建议使用管理权限创建此任务);2、管理员命令提示符窗口中,输入【ipconfig/release】命令,可以用来释放当前的IP地址,而输入【ipconfig/renew】命令,可

10代cpu支持win7系统。10代cpu搭配的400、500系列主板可以安装win7,安装的前提条件是必须关闭“安全启动”和有独显的情况开启csm兼容模式;但有些主板己经没有支持传统模式以及兼容模式的选项了,此时还需要更换主板。

相信有用户遇到这么一个问题了,win7系统却找不到摄像头快捷在哪,只能从程序里面调出摄像头功能,不知道内情的人还以为是摄像头的驱动没有安装呢,因此给有需要的win7用户在使用摄像头的时候制造了不小的麻烦。下面,小编就来给大家带来了Win7摄像头的打开教程了。使用笔记本电脑的用户都晓得笔记本自带有摄像头功能,不像台式电脑需要连接摄像头,在笔记本win7系统中直接打开摄像头就可以使用,非常方便。不过有用户一般的情况下都没有去摸索,尝试很多方法还是失败,下面,小编就来跟大家说说Win7摄像头的打开方法

win7电脑喇叭显示红叉的解决办法:1、在电脑桌面上找到“计算机”图标,单击鼠标右键选择“管理”;2、在左侧系统工具中单击选择“设备管理器”选项;3、在中间设备管理器选项中,单击展开“声音、视频和游戏控制器”选项;4、选中“Realtek High Definition Audio”,单击鼠标右键选择“启用”即可。

win7电脑没有NVIDIA控制面板的解决办法:1、打开电脑;2、打开“控制面板”,然后找到“NVIDIA控制面板”;3、打开“NVIDIA控制面板”设置中的“添加桌面上下文菜单”这个选项即可。

win7检测不到第二个显示器的解决办法:1、打开“控制面板”并选择“硬件和声音”;2、点击“设备打印机”中的“设备管理器”;3、通过“监视器”来查看是否有第二部显示器连接;4、回到桌面,右击鼠标,选择“屏幕分辨率”;5、选择合适自己显示器的刷新频率,再点击“应用”;6、重新对第二个显示器进行检测或显示即可。

win7可以通过使用系统配置实用程序、注册表编辑器和任务管理器来关闭开机自启动软件。详细介绍:1、系统配置实用程序,点击“开始”菜单,输入“msconfig”并按回车键,打开“系统配置”窗口,在“系统配置”窗口中,切换到“启动”标签,取消选中想要关闭的软件前面的复选框,然后点击“应用”和“确定”按钮保存更改即可。2、注册表编辑器等等。

罗技驱动在最新的系统Win11中兼容良好。对于一些用户好奇的老旧系统Win7,也可以放心使用,因为罗技驱动同样兼容Win7系统。罗技驱动win7能用吗:答:罗技驱动win7能用。罗技驱动无论什么系统都可以兼容,罗技是国际知名品牌,它的驱动非常全面。罗技驱动的主要界面:1、软件主界面在左边,三个按钮依次是灯光,按键,灵敏度设置。在灯光界面的设置中,特效比较常规,而音频视觉效果是亮点。它可以根据声音频率变色,根据高、中、低音频段进行不同的颜色和效果设置。3、按键设置中,用户可以根据自己有什么特殊要求


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!