Board logo

标题: LNMP环境安装Xcache,xcache安装配置,LNMP安装xcache 性能非常不错 [打印本页]

作者: idc886    时间: 2012-9-11 22:50     标题: LNMP环境安装Xcache,xcache安装配置,LNMP安装xcache 性能非常不错

在军哥的LNMP环境上安装Xcache
VPS网站系统 安装LNMP一键安装包,LNMP安装后 速度更快,更抗负载,最低128M内存要求。

LNMP环境下 XCache 一键安装包,LNMP安装XCache 3.0.1,APC 一键安装包。安装APC




官方站:http://xcache.lighttpd.net    是国人开发的

XCache 是一个又快又稳定的  PHP opcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器上稳定运行. 经过(在 linux 上)测试并支持所有现行  PHP 分支的最新发布版本, 如 PHP_5_1 PHP_5_2 PHP_5_3 PHP_5_4. 并完美支持线程安全/Windows. 与同类 opcode 缓存器相比更胜一筹, 比如能够快速跟进  PHP 版本

为什么选它?大家都说他很好很强大,比eacceletor好。大家用了才知道好不好。

我们测试过,在VPS上已使用xcache,非常好、负载、稳定性都好。你就试试看。

版本地址:http://xcache.lighttpd.net/pub/Releases/   



VPS上安装的DX25样站测试,  刷新看查询数和时间

以下安装方法已在 军哥的LNMP 环境 php5.2、5.3、5.4、5.5 下测试可用。

包括:debian、centos、32位与64位系统 都测试可用。

贴子下方有其中碰到的相关问题。如你在安装中有问题,请跟贴或发贴提出。  





一、登录SSH后,执行下载安装: xcache-2.0.1版本
本贴隐藏内容,需登录、回复后,即可浏览!

注:执行make install 后,会显示一个路径。这个路径请记下,别弄错了。
      PHP5.2、PHP5.3、PHP5.4,这个路径都不同。

      PHP5.2 推荐用 xcache-2.0.1版或许更稳定,1.3版也可以用。
      PHP5.3 推荐用 3.0版,性能更好。
                          3.0配制有点不同,参考本贴后面说明,和下面的一键安装贴。


相关贴:
LNMP环境下XCache一键安装包,LNMP安装XCache 3.0。APC一键安装包,LNMP安装APC。







二、配置到php.ini 中

修改:  /usr/local/php/etc/php.ini   文件,

在  [Zend Optimizer]  的前面加入以下内容:

  1. [xcache-common]
  2. zend_extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so

  3. [xcache.admin]
  4. ; Change xcache.admin.user to your preferred login name
  5. xcache.admin.user = "admin"
  6. ; Change xcache.admin.pass to the MD5 fingerprint of your password
  7. ; Use md5 -s "your_secret_password" to find the fingerprint
  8. xcache.admin.pass = "e10adc3949ba59abbe56e057f20f883e"

  9. [xcache]
  10. ; Change xcache.size to tune the size of the opcode cache
  11. xcache.size = 24M
  12. xcache.shm_scheme = "mmap"
  13. xcache.count = 2
  14. xcache.slots = 8K
  15. xcache.ttl = 0
  16. xcache.gc_interval = 0
  17. ; Change xcache.var_size to adjust the size of variable cache
  18. xcache.var_size = 8M
  19. xcache.var_count = 1
  20. xcache.var_slots = 8K
  21. xcache.var_ttl = 0
  22. xcache.var_maxttl = 0
  23. xcache.var_gc_interval = 300
  24. xcache.test = Off
  25. xcache.readonly_protection = On
  26. xcache.mmap_path = "/tmp/xcache"
  27. xcache.coredump_directory = ""
  28. xcache.cacher = On
  29. xcache.stat = On
  30. xcache.optimizer = Off
  31. [xcache.coverager]
  32. xcache.coverager = On
  33. xcache.coveragedump_directory = ""
复制代码


注:第二行的zend_extension =   后面的路径,就是上一步那里提示的路径,别弄错了
      具体每行有什么作用,自己百度看。

      中间的:[xcache.admin] 为设置管理用户名admin,密码123456 ,


关于中间那md5密码
本贴隐藏内容,需登录、回复后,即可浏览!

      这个如在DX25后台清空内存缓存时会要求输入这个管理用户和密码。
      WP博回复留言时也会提示用户和密码。所以可以这样取消这管理帐户:
本贴隐藏内容,需登录、回复后,即可浏览!

相关贴: 蛋疼xcache安装了以后,wp回复需要密码!!!


Xcache 的管理地址,

2.0版的管理目录是在压缩包里的  admin 目录
3.0版的管理目录是在压缩包里的  htdocs 目录

把这个目录复制到你网站下就可以访问了。
里面会显示详细的PHP脚本缓存占用多少,和缓存了哪些脚本。
里面还能看到 var 数据变量缓存(理解为数据库缓存)
如果你没有程序支持 xcache的 数据变量缓存,里面就会提示var 变量缓存未启用。

还有登录 Xcache 的管理地址,也是需要 这个账户和密码的。
如果php.ini 中删除了上面的账户配制, 登录时 就会提示未设置账号无法登录。






三、测试、重启、生效:

完成以上步骤后,保存php.ini,  

再在  SSH里执行:php -v

检测一下,是否正确,有没有错误提示。[11]1[/11]

如没问题后,执行重启 PHP: /etc/init.d/php-fpm restart   即可生效。




到此,你就可以看到  DX右下角的  查询数, 如果 xcache  生效了,查询数只几个的。

如不想使用Xcache ,只需把 php.ini 下面添加的删除,再重启PHP即可。


相关贴:
LNMP环境下XCache一键安装包,LNMP安装XCache 3.0。APC一键安装包,LNMP安装APC。





至于xcache 性能如何,目前暂时还没有在大站上测试运行,不知稳定性能如何。

测试 Xcache,并没看到占用多少内存, 相比APC、MEM、eA旧版都是几十M占用。

测试与 APC 缓存效果一样,但上次测试APC稳定性不是那么好。

APC相关贴:lnmp环境下编译php APC 教程,不用重新编译PHP。APC安装

--------------------------------------------------------------------
注:已经测试、并使用,Xcache  的性能非常好。







关于安装中的 Xcache 其它的一些相关解说:

1、第一步中的: ./configure  --with-php-config=/usr/local/php/bin/php-config

    后面的这个路径,如果不带路径,就会提示:
configure: error: Cannot find php-config. Please use --with-php-config=PATH

     这个是以军哥的LNMP环境为例,其它环境请填正确路径。




2、有 xcache-1.3.2 版本,
     但 xcache-2.0.1 是新版,并且同时支持PHP5.2、5.3、5.4的。现在有3.0新版了


   虽然有 3.0.0版本,但xcache.so  加载方式不同了,按上面方法就会出问题:
    提示:xcache.so doesn't appear to be a valid Zend extension   这样的错误

有时还出现这样的错误:PHP Warning:  PHP Startup: XCache: Unable to initialize module
Module compiled with module API=20060613
PHP    compiled with module API=20090626


   最后把中间的路径换成 extension = xcache.so  就可以了,php -v显示如下:
3.0版在PHP 5.2、5.3、5.4下都可用,在 3.0下显示的信息,多了几行XCache了)
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
    with XCache v3.0.0-dev, Copyright (c) 2005-2012, by mOo
    with XCache Optimizer v3.0.0-dev, Copyright (c) 2005-2012, by mOo
    with XCache Cacher v3.0.0-dev, Copyright (c) 2005-2012, by mOo

   如果 xcache 2.0版本使用 extension = xcache.so   那xcache 将不运行。
   如果 要用ionCube 的,就只能装 xcache2.0,  不然 3.0 会有冲突,
    注:xcache 3.0.1 已解决了ionCube问题




3、但有的时候,在有些系统、环境中安装xcache 2.0,会出现如下错误:
    如、有时PHP 5.3、5.4版本上执行出错,是有的时候会出如下错误提示:

    XCache requires Zend Engine API version 220090626.
    The Zend Engine API version 220100525 which is installed, is newer.
    Contact mOo at http://xcache.lighttpd.net for a later version of XCache.

   出这样的错误提示时,安装方法要变换一下,如:

cd xcache-2.0.1;phpize;mkdir ../xcache-build;cd ../xcache-build../xcache-2.0.1/configure   --with-php-config=/usr/local/php/bin/php-config

  这样就可解决以上的出错信息! 解决方法参考相关贴:
Problema al actualizar PHP 5.3 – XCache requires Zend Engine API version

XCache requires Zend Engine API version 220060519.
The Zend Engine API version 220090626 which is installed, is newer.
Contact mOo at http://xcache.lighttpd.net for a later version of XCache.

      xcache 3.0 新版就不存在这问题了,因为不再使用 Zend方式加载。
注:后来最后发现3.0版也会有。   原因现在查清。是多次安装引起。
     先在PHP5.2下安装xcache, 安装测试完后,再升级PHP为5.3版本再次安装xcache
     但是再次安装xcache时,原xcache安装目录没删除,直接在原目录里安装就会出错
     原因是,在PHP5.2下安装时会生成的API文件版本文件,
     这些生成的文件再次安装可能没覆盖掉原生成的文件,所以5.3版本识别会有问题。
     



4、执行:make install  后路径参考值: (3.0版不考虑这个)
   /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/   5.2路径
   /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/   5.3路径
   /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/   5.4路径





5、在  [Zend Optimizer]  前面加 XCache 才有效。  (3.0版不考虑这个)
    如果是加在后面了,只能PHP探针检测到。但是没效果。
    有没有效果,可以通过刷新DX页面,查看右下角的查询数,和执行时间。




6、XCache  与  eAccelerator 、APC不能同时共存,提示错误:
       PHP Warning:  Cannot load module 'XCache' because conflicting module
      'eAccelerator' is already loaded in Unknown on line 0   Segmentation fault
     如不想使用Xcache 或 eA ,只需把 php.ini 下面添加的删除,再重启PHP即可。




7、如果安装了 memcached ,先执行停止:/etc/init.d/memcached stop
    再删除他的启动文件 /etc/init.d/memcached 就不会自动运行了。



以上几点是在安装时碰到,做下记录。  有不同看法,或测试结果,请跟贴讨论。


二楼性能测试,对比,性能非常不错。
作者: idc886    时间: 2012-9-11 22:51

在安装中如出现问题,  请跟贴。  一起讨论


具体 eAccelerator、XCache、APC、memcached 哪个更好更稳定,还需慢慢检测。

大家慢慢折腾吧。



---------------------------------------------------10.3日 晚上7时加,

DS的VPS出了点问题,顺便把 缓存 从原 eA 0.96 + me  换成 XCache 2.01

已正常运行一天,探针图:

2.jpg


通过探针来看:
    1、负载更好。15分钟 平均0.3左右,现在高峰时。 原来0.5以上,高峰1以上。
    2、内存占用更少。 运行一天 260M左右占用。    原来 都是400M以上占用。


注:高峰时取消 XCache 时,负载是 2左右的。




环境: debian-6.0-x86_64   PHP 5.3.17 +  nginx/1.3.6 + XCache 2

DX2 的站,  网站 使用了  cloudflare 的CDN,  探针显示,一整天 4G左右流量。

今天现在 QQ统计 PV:39,054    独立IP:9,474 ,明天才能看到一整天的统计。



可惜现在DS 的平台上 看不到空间的流量、负载实时统计图了。不然那个统计更详细。




phpmyadmin 里显示:  

33.jpg

平均 48.01/s 次查询   (注:晚上高峰查询是 100/s 左右),数据流量 10G???



------------------------------------------------
明天再测试关掉CDN测试性能和负载。   (一天至少耗20G流量)

3号11点,到4号11点,   

没用CDN 流量: 25G -5G,  20G一天。

负载也很正常,高峰时也只 0.4左右 (15分钟),现在是 晚上11点抓图,所以低谷。

25G流量.jpg


mysql 数据库是 3号11点 左右重启的    数据流量反而变小了。 并发了小了。
22.jpg


3日昨天,4日今天的 DX2  网站IP 和PV。
33.jpg




看来,XCache  的确非常给力的。  稳定、负载好、内存占用少。

以前用 ea + me 时,内存占很多。不用CDN的话,负载常常1以上。

经后,VPS都将考虑使用 XCache


注:经测试,在PHP5.3上 XCache 3.0正式版比2.0本版缓存性能更好。      
在PHP5.2 版本上推荐安装 eAccelerator 0.9.5.3,性能会更好。
      eA 0.9.5.3 版本即缓存,又PHP加速。所以说5.2上安装性能更好。
      但php5.3 只支持 eA 0.9.6,没数据缓存。所以5.3推荐用XCache 3.0

图片附件: 2.jpg (2012-10-3 19:41, 38.08 KB) / 下载次数 1557
http://idc866.com/attachment.php?aid=2629&k=9f324c9e1fbf4d63031cbb24a1f407e8&t=1732784928&sid=3H5634



图片附件: 33.jpg (2012-10-3 19:56, 31.49 KB) / 下载次数 1534
http://idc866.com/attachment.php?aid=2630&k=9cb1be11eda1d797d12681006a7855c2&t=1732784928&sid=3H5634



图片附件: 22.jpg (2012-10-5 22:55, 33.26 KB) / 下载次数 1523
http://idc866.com/attachment.php?aid=2632&k=d978fecac5c383e7fe87916dadc90ec3&t=1732784928&sid=3H5634



图片附件: 25G流量.jpg (2012-10-5 22:55, 36.56 KB) / 下载次数 3005
http://idc866.com/attachment.php?aid=2633&k=5f27ebfddfdf09f5c32362bea198ca90&t=1732784928&sid=3H5634



图片附件: 33.jpg (2012-10-5 22:55, 18.8 KB) / 下载次数 1553
http://idc866.com/attachment.php?aid=2634&k=c8725d7d5ae9bc681991cbb46f70c4c7&t=1732784928&sid=3H5634


作者: canjian09    时间: 2012-9-12 07:08

哦哦  我去试试  看看和 EA 哪个好
作者: myniejianping    时间: 2012-9-12 19:03

强势围观
作者: mrlong    时间: 2012-9-12 23:43

前排前排
作者: dz10    时间: 2012-9-13 22:51

这我要看看
作者: aizhu    时间: 2012-9-14 21:20

支持一下
作者: lunlun    时间: 2012-9-14 21:24

测试下
作者: cjwbbs    时间: 2012-10-3 19:17

参考一下,回复工艺额
作者: idc886    时间: 2012-10-3 19:35

已在大点的站上 测试。   

性能非常优秀。
作者: 龙腾宇内    时间: 2012-10-6 17:29

呵呵。大家折腾啦
作者: idc886    时间: 2012-10-19 22:17

回复 12# ly1003724390

xcache  官方说了,那是 PHP 5.3.13 版本问题。  PHP新版本已解决此问题。


我用已用上他了,没遇到这些问题,  而且性能非常优秀。
作者: strljx    时间: 2012-10-20 19:40

好久没来了!支持个!
作者: leisun321    时间: 2012-10-26 23:06

顶楼主啦..希望楼主多发精品好帖啦.....
作者: kxin    时间: 2012-11-12 16:19

学习下
作者: ch4456    时间: 2012-11-23 04:58

看看 学习学习哦
作者: izr    时间: 2012-11-24 09:30

我来学习了。
作者: pengkeke    时间: 2012-12-12 16:02

看一下!!!!!!!!!!!
作者: pengkeke    时间: 2012-12-12 17:03

请问楼主 php5.2 上用xcache 3.0 怎么样
作者: idc886    时间: 2012-12-13 13:00

回复 20# pengkeke


    在PHP5.2 装 xcache 3.0 测试没问题。 (如果不需要用ionCube)

因我都用5.3环境,所以具体 x 2.0 还是 x 3.0  在PHP5.2上哪个更好,暂时不知。
在PHP5.3下测试 x 3.0 的性能更好。


PHP 5.2 推荐装  eAccelerator  0.9.5 性能应该更好,即缓存,又PHP加速。
作者: pengkeke    时间: 2012-12-14 13:57

谢谢管理员,请问为啥设置不能复制啊,copy个代码都要手动打一次 - -
作者: loneil    时间: 2012-12-14 20:10

这个有用么???试试
作者: idc886    时间: 2012-12-16 16:19

回复 22# pengkeke


    哪里不能复制?     这个贴没有禁止复制。
作者: pengkeke    时间: 2012-12-18 16:25

回复 24# idc886


   浏览器的问题,IE8可以,chrome鼠标不能选取文字
作者: idc886    时间: 2012-12-19 21:09

回复 25# pengkeke


   现在下载了个GG浏览器,   测试访问没问题,  可选择,可复制。
作者: 学习者    时间: 2013-3-22 17:02

回复 1# idc886


   请问这个有没有使用教程,那些该如何设置之类的,谢谢了
作者: 学习者    时间: 2013-3-23 20:43

回复 1# idc886

请问这里说的要在zend前是什么意思,是在将xcache的配置代码放到b处?
[Zend]
a处?



我测试了好像都不成功,请问是什么问题?
作者: idc886    时间: 2013-3-23 21:48

回复 27# 学习者


    Xcache 需要你的网站程序是否支持使用。  如DX论坛,默认就开启了支持。

只要你服务器上安装上了Xcache。  他就会默认使用上Xcache。



关于[Zend]放在前面。 Xcache 2.0 或 1.2等版本需要, 3.0版加载方式不同。

3.0以前的版本在php.ini 中 Xcache 代码需要放在    [Zend] 代码的前面。


就如图:   这个  Xcache 2.0  显示在 zend的前面,Xcache 才会起到做用。




你如果放在 zend 代码的下面。 这个图就会显示在 zend 下面。 Xcache也不会起缓存作用。


Xcache 起没起作用。 你可以测试,把代码位置换 zend 上或换下,重启 PHP。
刷新DX论坛看右下角的 Processed in 0.054563 second(s), 9 queries 这个查询次数和时间

放在ZEND代码上面,9 queries 这个查询次数和执行时间都将很大,多刷新效果也不会变化。
放在ZEND代码后面,9 queries 这个查询次数和执行时间都将很小,多刷新效果就能看到效果。

注:只对 Xcache 3.0 版本就随便放了。因为不再使用ZEND方式载 了。
作者: kinhit    时间: 2013-3-31 17:49

顶起来 看一下啊
作者: lovemxl    时间: 2013-4-17 22:09

看看 这个必须有
作者: q603459153    时间: 2013-4-28 11:08

`````````````
作者: aukwokfai    时间: 2013-4-28 16:44

看一看先
作者: 小飞飞    时间: 2013-5-4 17:21

这个相当支持
作者: 天鹅的绝唱    时间: 2013-8-6 20:37

强势围观围观是一种态度
作者: peter20911    时间: 2013-12-3 02:56

来看看中间的MD5密码要做什么的
作者: jimmy    时间: 2013-12-24 15:21

看看装个!




欢迎光临 免费国外空间,国外免费空间, (http://idc866.com/) Powered by Discuz! 7.2