网站地图    收藏   

主页 > 后端 > php资料库 >

XCache opcode 缓存器/优化器,PHP 性能提升方案_自学

来源:自学PHP网    时间:2014-12-04 22:12 作者: 阅读:

[导读] XCache 工程由 mOo 领队, 他也是 Lighttpd 的开发成员之一. Lighttpd 是最快的 Web 服务器应用程序之一, 并且超越 Apache 以及许多其他 Web 服务器. XCache 努力达到类似的效果. XCache 3.0.0 发布,该版...

XCache 工程由 mOo 领队, 他也是 Lighttpd 的开发成员之一. Lighttpd 是最快的 Web 服务器应用程序之一, 并且超越 Apache 以及许多其他 Web 服务器. XCache 努力达到类似的效果.

XCache 3.0.0 发布,该版本除了 bug 修复,对 XCache 管理页面做了很多改进,支持命名空间;通过增加新的诊断模块;可在崩溃时自动禁用缓存。需要注意的是要使用 extension= 来加载 XCache,不再支持 zend_extension= 方式加载。

XCache 是一个开源的 opcode 缓存器/优化器,  这意味着他能够提高您服务器上的 PHP 性能. 他通过把编译 PHP 后的数据缓冲到共享内存从而避免重复的编译过程,  能够直接使用缓冲区已编译的代码从而提高速度. 通常能够提高您的页面生成速率 2 到5 倍, 降低服务器负载.


 

<?php
define(TMPDIR, '/tmp');
    
function load_abc_data()
{
  if (xcache_isset("abc_data")) {
    return xcache_get("abc_data");
  }
  // it worth a lock here to avoid useless yet harmful concurrent 
  // load from any slow backend (backend=mysql here).
  $fp = fopen(TMPDIR . "/abc_data.lock", "w");
  flock($fp, LOCK_EX);
  // check AGAIN after we get the lock
  if (xcache_isset("abc_data")) {
    fclose($fp);
    return xcache_get("abc_data");
  }
  mysql_query .... and get $data
  xcache_set("abc_data", $data, 120); // save for 2 minutes
  fclose($fp);
  return $data;
}
    
?>

 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论