• 售前

  • 售后

热门帖子
入门百科

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

[复制链接]
123457466 显示全部楼层 发表于 2021-10-25 19:22:04 |阅读模式 打印 上一主题 下一主题
本文实例陈诉了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文件到场
  1. [XCache]
  2. Zend_extension_ts=php_xcache.dall
复制代码
在Liunx系统上安装XCache
  1. wget http://xcache.lighttpd.net/pub/Releases/1.3.2/xcache-1.3.2.tar.gz
  2. tar -zxvf xcache-1.3.2.tar.gz
  3. cd xcache-1.3.2
  4. phpize
  5. ./configure --enable-xcache
  6. make
  7. make install doc.codesky.net
复制代码
打开php.ini文件,增长如下代码:
  1. [xcache-common]
  2. ; change me - 64 bit php => /usr/lib64/php/modules/xcache.so
  3. ; 32 bit php => /usr/lib/php/modules/xcache.so
  4. zend_extension = /usr/lib64/php/modules/xcache.so
  5. [xcache.admin]
  6. xcache.admin.auth = On
  7. xcache.admin.user = "mOo"
  8. ; xcache.admin.pass = md5($your_password)
  9. xcache.admin.pass = ""
  10. [xcache]
  11. xcache.shm_scheme =    "mmap"
  12. xcache.size =        32M
  13. xcache.count =         1
  14. xcache.slots =        8K
  15. xcache.ttl  =       3600
  16. xcache.gc_interval =     300
  17. ; Same as aboves but for variable cache
  18. ; If you don't know for sure that you need this, you probably don't
  19. xcache.var_size =      0M
  20. xcache.var_count =       1
  21. xcache.var_slots =      8K
  22. xcache.var_ttl  =       0
  23. xcache.var_maxttl  =     0
  24. xcache.var_gc_interval =   300
  25. ; N/A for /dev/zero
  26. xcache.readonly_protection = Off
  27. xcache.mmap_path =  "/dev/zero"
  28. xcache.cacher =        On
  29. xcache.stat  =        On
复制代码
注意修改zend_extension = /usr/lib64/php/modules/xcache.so为精确的路径。
XCache设置
xcache.admin.user   (String) 管理认证用户名。默认设置"mOo"
xcache.admin.pass  (String)管理认证暗码。默认设置为"<empty 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类
  1. <?php
  2. if (!defined('IS_INITPHP')) exit('Access Denied!');
  3. /*********************************************************************************
  4. * InitPHP 2.0 国产PHP开发框架 Dao-XCACHE缓存
  5. *-------------------------------------------------------------------------------
  6. * 版权所有: CopyRight By initphp.com
  7. * 您可以自由使用该源码,但是在使用过程中,请保留作者信息。尊重他人劳动成果就是尊重自己
  8. *-------------------------------------------------------------------------------
  9. * $Author:zhuli
  10. * $Dtime:2011-10-09
  11. ***********************************************************************************/
  12. class xcacheInit {
  13.   /**
  14.    * Xcache缓存-设置缓存
  15.    * 设置缓存key,value和缓存时间
  16.    * @param string $key  KEY值
  17.    * @param string $value 值
  18.    * @param string $time 缓存时间
  19.    */
  20.   public function set_cache($key, $value, $time = 0) {
  21.     return xcache_set($key, $value, $time);;
  22.   }
  23.   /**
  24.    * Xcache缓存-获取缓存
  25.    * 通过KEY获取缓存数据
  26.    * @param string $key  KEY值
  27.    */
  28.   public function get_cache($key) {
  29.     return xcache_get($key);
  30.   }
  31.   /**
  32.    * Xcache缓存-清除一个缓存
  33.    * 从memcache中删除一条缓存
  34.    * @param string $key  KEY值
  35.    */
  36.   public function clear($key) {
  37.     return xcache_unset($key);
  38.   }
  39.   /**
  40.    * Xcache缓存-清空所有缓存
  41.    * 不建议使用该功能
  42.    * @return
  43.    */
  44.   public function clear_all() {
  45.     $tmp['user'] = isset($_SERVER['PHP_AUTH_USER']) ? null : $_SERVER['PHP_AUTH_USER'];
  46.     $tmp['pwd'] = isset($_SERVER['PHP_AUTH_PW']) ? null : $_SERVER['PHP_AUTH_PW'];
  47.     $_SERVER['PHP_AUTH_USER'] = $this->authUser;
  48.     $_SERVER['PHP_AUTH_PW'] = $this->authPwd;
  49.     $max = xcache_count(XC_TYPE_VAR);
  50.     for ($i = 0; $i < $max; $i++) {
  51.       xcache_clear_cache(XC_TYPE_VAR, $i);
  52.     }
  53.     $_SERVER['PHP_AUTH_USER'] = $tmp['user'];
  54.     $_SERVER['PHP_AUTH_PW'] = $tmp['pwd'];
  55.     return true;
  56.   }
  57.   /**
  58.    * Xcache验证是否存在
  59.    * @param string $key  KEY值
  60.    */
  61.   public function exists($key) {
  62.     return xcache_isset($key);
  63.   }
  64. }
复制代码
更多关于PHP相干内容感兴趣的读者可查察本站专题:《php缓存技术总结》、《php面向对象程序计划入门教程》、《PHP根本语法入门教程》、《PHP数组(Array)操作本事大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作本事汇总》
盼望本文所述对各人PHP程序计划有所资助。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作