Xcache 和 memcached 是两个不同层面的缓存,不存在可比性。

Xcache 是 php 底层的缓存,它将PHP程式编译成字节码(byte code),再透过服务器上安装对应的程式来执行PHP脚本。而 memcached 是应用层缓存,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。

xcache 是不需要修改PHP程序的,只要安装了就可以自动为你的程序加速,而 memcached 则需要你修改程序的,需要你在操作数据库之前先询问下 memcached 有没有缓存数据,如果有且没有过期则不再访问数据库,以达到减少数据库查询的目的。
ps:LAMP 的瓶颈在M,即数据库,以新的KVDB代替旧的关系数据库可以直接提高web应用程序的性能。
xcache的使用与配置
一、安装Xcache
# wget http://xcache.lighttpd.net/pub/Releases/1.3.0/xcache-1.3.0.tar.gz
# tar zxvf xcache-1.3.0.tar.gz
# cd xcache-1.3.0
# /usr/local/php/bin/phpize
# ./configure --enable-xcache--enable-xcache-coverager --enable-xcache-optimizer--with-php-config=/usr/local/php/bin/php-config
# make && make install

--enable-xcache 表示启用Xcache支持;

--enable-xcache-coverager 表示包含用于测量加速器功效的附加特性;

--enable-xcache-optimizer表示启用操作码优化

  安装完毕后系统会提示xcache.so模块生成路径,本次生成路径为/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/,然后把xcache.so移动到/usr/local/php/include/php/ext目录下。
 
二、配置管理Xcache
 
1、修改php配置文件
 
  配置时我们可以参考xcache的配置模板xcache.ini,此文件位于Xcache安装程序中
 
# vi /usr/local/php/lib/php.ini
 
  然后添加如下内容
 

extension_dir=/usr/local/php/include/php/ext
[xcache-common]
extension = xcache.so [xcache.admin] xcache.admin.enable_auth = On
xcache.admin.user = "xcache"
xcache.admin.pass = "" [xcache]
xcache.shm_scheme ="mmap"
xcache.size=60M
xcache.count =1
xcache.slots =8K
xcache.ttl=0
xcache.gc_interval =0
xcache.var_size=4M
xcache.var_count =1
xcache.var_slots =8K
xcache.var_ttl=0
xcache.var_maxttl=0
xcache.var_gc_interval =300
xcache.test =Off
xcache.readonly_protection = On
xcache.mmap_path ="/tmp/xcache"
xcache.coredump_directory =""
xcache.cacher =On
xcache.stat=On
xcache.optimizer =Off [xcache.coverager]
xcache.coverager =On
xcache.coveragedump_directory =""
 
2、生成Xcache缓存文件
 
# touch /tmp/xcache
#chown -R nginx.nginx /tmp/xcache
# chmod 777 /tmp/xcache
 
3、生成Xcache管理员的秘密(MD5密文)
 
# echo -n "123456" | md5sum
 
e10adc3949ba59abbe56e057f20f883e
 
  然后将上述生成的MD5密文粘贴到php.ini文件中xcache.admin.pass = ""选项,xcache.admin.pass= "e10adc3949ba59abbe56e057f20f883e"
 
4、拷贝Xcache管理程序到网站根目录下
 

# cp -a /tmp/xcache-1.3.0/admin/  /usr/local/nginx/html/
 
  然后重新启动PHP,然后访问http://localhost/admin ,用户名为xcache 密码为123456;另外,还可以通过phpinfo来验证PHP是否支持Xcache
memcache的使用与配置 注意是客户端软件而不是memcached

cd /opt/software
tar zxvf memcache-3.0.6.tgz
cd memcache-3.0.6/
/opt/local/php/bin/phpize
./configure --with-php-config=/opt/local/php/bin/php-config
make
make install

php 缓存加速器软件的更多相关文章

  1. 使用Varnish代替Squid做网站缓存加速器的详细解决方案----转载

    [文章作者:张宴 本文版本:v1.2 最后修改:2008.01.02 转载请注明出处:http://blog.s135.com] 我曾经写过一篇文章──<初步试用Squid的替代产品──Varn ...

  2. Linux实战教学笔记36:PHP服务缓存加速深度优化实践

    一,PHP缓存加速器介绍与环境准备 1.1 PHP缓存加速器介绍 1.1.1 操作码介绍及缓存原理 当客户端请求一个PHP程序时,服务器的PHP引擎会解析该PHP程序,并将其编译为特定的操作码(Ope ...

  3. php优化,操作码优化,缓存优化

    一.php缓存加速器软件种类 xcache,eaccelerator,zend,apc如何选择:建议xcache,eaccelerator,二选一,首选xcachexcache更快 二.php缓存加速 ...

  4. 深度优化LNMP之PHP (转)

    深度优化LNMP之PHP   PHP缓存加速介绍   1.操作码介绍及缓存原理     当客户端请求一个php程序时,服务器的PHP引擎会解析该PHP程序,并将其编译为特定的操作码文件(Operate ...

  5. 深度优化LNMP之PHP

    PHP缓存加速介绍   1.操作码介绍及缓存原理     当客户端请求一个php程序时,服务器的PHP引擎会解析该PHP程序,并将其编译为特定的操作码文件(Operate Code,opcode)该文 ...

  6. PHP5缓存插件

    1.1操作码介绍及缓存原理 当客户端请求一个PHP程序时,服务器的PHP引擎会解析到该PHP程序,并将其变异为特定的操作码文件(OperateCode opcode),这是要执行的PHP代码的一种二进 ...

  7. Linux实战教学笔记42:squid代理与缓存实践(一)

    第1章 Squid介绍 1.1 缓存服务器介绍 缓存服务器(英文意思cache server),即用来存储(介质为内存及硬盘)用户访问的网页,图片,文件等等信息的专用服务器.这种服务器不仅可以使用户可 ...

  8. squid代理与缓存(上)

    squid代理与缓存(上) 1. Squid介绍 1.1 缓存服务器介绍 缓存服务器(英文意思cache server),即用来存储(介质为内存及硬盘)用户访问的网页,图片,文件等等信息的专用服务器. ...

  9. 四十、LAMP与LNMP加速与缓存优化进阶实战上部

    实例: 一. 所有服务器配置定时时间同步,必须通过web server上网. 有两种方式: 1.服务器A能进行上网,作为web server ,通过指定为ntp服务器,所有服务器访问这个服务器 2.服 ...

随机推荐

  1. Windows-003-桌面无显解决方法

    本文主要介绍桌面无显的解决方法,仅供参考,若有更好的解决方案,欢迎告知. 桌面无显分为两种情况:桌面快捷图标无显,任务栏正常显示:桌面仅显示背景图片(桌面快捷图标.任务栏均无显).下面针对这两种情况给 ...

  2. iOS初级数据持久化 沙盒机制 归档与反归档

    数据持久化就是数据保存成文件,存储到程序中的沙盒中. 沙盒构成 Document 存储用户数据,需要备份的信息 Caches 缓存文件, 程序专用的支持文件 Temp 临时文件 通过代码查找程序沙盒的 ...

  3. glOrtho、glFrustum && glPerspective

    glOrtho         :正交投影,摄像机可以位于裁剪体内,所以near和far可以取两个正值或者一正一负 glFrustum     :透视投影,摄像机不可以位于裁剪体内,所以near和fa ...

  4. APICloud云修复再升级 增加热重启APP功能

    移动应用开发平台APICloud的亮点功能云修复在本月迎来升级版,云修复是APICloud的优势功能之一,通过APICloud平台开发的APP或者嵌入SuperWebView SDK的原生APP在发布 ...

  5. 读取、写入excel数据

    在实际项目中,不可避免的会操作excel表格.一直以来都是读取excel表格,可今天为了写入excel表格,可是煞费苦心,终于完成,记录下来以便后续使用. 1.读取excel表格的数据 读取excel ...

  6. ucenter 显示通信成功的条件

    应用的主 URL+/api/uc.php?code= 如果这个页面返回1,则通信成功,也就是说,uc.php是通信成功里重要的一环 事实上,我还没有通信成功,我只是写了一个1在欺骗服务端

  7. python_字典

    1. 字典的定义 字典由多个键及其对应的值构成(我们也把键/值对称为项).键是唯一的,值不唯一.键可以是数字.字符串甚至是元组. 2. 字典的创建 (1) phonebook = {"} 名 ...

  8. iTOP-4412 开发板镜像的烧写

    镜像就是源代码编译并连接以后生成的可执行文件包,把这些镜像文件烧写到开发板的存储芯片里,开机就可以运行了. 烧写方式有两种,通过TF卡烧写以及使用OTG接口烧写 OTG方式:只能在WIN7 或者XP ...

  9. Volocity循环高级用法

    #foreach($announcementDo in $announcementList) #set($listSize=$!announcementList.size() - 1) #if(($v ...

  10. Java nio 笔记:系统IO、缓冲区、流IO、socket通道

    一.Java IO 和 系统 IO 不匹配 在大多数情况下,Java 应用程序并非真的受着 I/O 的束缚.操作系统并非不能快速传送数据,让 Java 有事可做:相反,是 JVM 自身在 I/O 方面 ...