LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载

2014/11/27 教程笔记 4,743 14

WordPress 精品主机推荐:恒创主机 | 阿里云(本站目前所用云主机)

倡萌一直都是用军哥的 lnmp 一键安装包来配置服务器环境,最近一个月来,网站流量上来了些,可能还有其他原因,导致服务器负载不太稳定,负载时不时会飙升好几倍甚至十几倍,访问就非常慢啦。昨天下午直接导致服务器 nginx 进程死掉了,想来想去,最后还是决定配置 lnmp 1.1 ,顺便安装 Xcache 对象缓存扩展,配合之前的Memcached 内存缓存一起,负载很明显就下来了,内存占用也小多了。

XCache 简介

XCache 是一个国人开发的又快又稳定的 PHP opcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器上稳定运行。经过(在 linux 上)测试并支持所有现行 PHP 分支的最新发布版本。要了解更多信息,请访问官方文档:http://xcache.lighttpd.net/

Lnmp 下安装 XCache

进入lnmp解压后的目录,执行:./addons.sh install xcache 运行后有如下提示:

需要设置xcache管理页面admin用户的密码。

出现“Press any key to install...or Press Ctrl+c to cancel“,再次回车确认即可开始安装。

卸载
执行:./addons.sh uninstall xcache

安装好以后,访问 http://你的服务器IP/xcache/    输入admin用户名和密码就可以登录管理界面:

点击右上角的“诊断”,可以看到你目前的 Xcache 设置是否存在什么问题,而且给出了解释和建议,非常人性化。

设置 XCache

Xcache 的设置选项在 php.ini 里,lnmp 1.1 自动添加的如下:

;xcache
[xcache-common]
extension = xcache.so

[xcache.admin]
xcache.admin.enable_auth = On

;默认的管理员用户名,你可以修改 admin 为其他用户名
xcache.admin.user = "admin"

;run: echo -n "yourpassword" |md5sum |awk '{print }' to get md5 password 以下是密码,就是安装时设置的(MD5加密)
xcache.admin.pass = "5ed1b644b258a5cc83"

[xcache]
xcache.shm_scheme =        "mmap"

;对象缓存的大小,默认好像是20M,可能不够用,自己修改大些
xcache.size  =               20M
; set to cpu count (cat /proc/cpuinfo |grep -c processor)
xcache.count =                 1
xcache.slots =                8K
xcache.ttl   =                 0
xcache.gc_interval =           0

;变量缓存大小,默认是 4M,一般的程序是没有用到这个缓存的,可以不理会
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.readonly_protection = Off
; for *nix, xcache.mmap_path is a file path, not directory. (auto create/overwrite)
; Use something like "/tmp/xcache" instead of "/dev/*" if you want to turn on ReadonlyProtection
; different process group of php won't share the same /tmp/xcache
xcache.mmap_path =    "/dev/zero"
xcache.coredump_directory =   ""
xcache.experimental =        Off
xcache.cacher =               On
xcache.stat   =               On
xcache.optimizer =           Off

[xcache.coverager]
; enabling this feature will impact performance
; enable only if xcache.coverager == On && xcache.coveragedump_directory == "non-empty-value"
; enable coverage data collecting and xcache_coverager_start/stop/get/clean() functions
xcache.coverager =          Off
xcache.coveragedump_directory = ""
;xcache end

我们一般就修改一下管理员用户名 xcache.admin.user  和  对象缓存大小 xcache.size  即可,当然,如果你使用了 XCache 的变量缓存,也可以进行相应设置  xcache.var_size  、xcache.var_slots  等。

更详细的设置说明,请看官方文档:http://xcache.lighttpd.net/wiki/XcacheIni

WordPress 使用 Xcache 进行变量缓存

Xcache 不仅可以缓存php,还可以缓存变量(类似于 Memcached),就是上面图中的 Var 缓存,对于 WordPress,只需要下载 https://wordpress.org/plugins/xcache/ 插件,解压后,将里面的 object-cache.php 上传到 wp-content 目录即可。

注意:

如果你一个主机安装了多个 WordPress,请使用不通过的数据库表前缀,比如 wp_ 、wp2_ ,否则可能会导致变量冲突!

如果你之前使用了 Memcached 进行变量缓存,请不要同时使用 Xcache 的变量缓存功能,两者选其一!!

错误排查

LNMP:配置过程中,如果你先添加了域名绑定主机,然后再安装 xcache,访问xcache 管理界面时,可能会提示:

Fatal error: xcache_count(): xcache.admin.user and/or xcache.admin.pass settings is not configured. Make sure you've modified the correct php ini file for your php used in webserver. in/home/xxx/xcache/cacher/index.php on line 259

究其原因,打开php.ini配置文件:

vi /usr/local/php/etc/php.ini

在 xcache 的配置信息上方,可以看到绑定的域名信息:

这段域名信息在 ;xcache 配置信息的上方,我们将它移到 ;xcache end 的下面,保存重启php即可:

转载于:https://www.cnblogs.com/archoncap/p/5125068.html

LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载相关推荐

  1. php ab压力测试,安装Xcache缓存加速php及ab压力测试结果

    XCache 是一个又快又稳定的 PHP opcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器上稳定运行. 经过(在 linux 上)测试并支持所有现行 PHP 分支的最新发布版本, 如 ...

  2. lnmp下安装PECL HTTP 扩展

    在http://pecl.php.net/package/pecl_http下载 我下的是1.7.4稳定版 wget http://pecl.php.net/get/pecl_http-1.7.4.t ...

  3. Nginx+Varnish 实现动静分离,为服务器分流,降低服务器负载

    相必大家在看加快网站响应速度方面的文章时,都提过这么一条:动静分离.那怎样实现动静分离呢,这里笔者就亲自搭建相关服务实现动静分离. 动静分离是一种架构,就是把静态文件,比如JS.CSS.图片甚至有些静 ...

  4. LAMP之二:LAMP的性能测试以及安装xcache,为php加速

    一.前言 本篇接<LAMP之一:apache.mysql.php的安装及互联互通>.上一篇介绍了Apache.mysql,php的编译安装及互联互通,这篇将以上篇为前提,做LANP的性能测 ...

  5. 网众无盘服务器架设,网众无盘6.0服务器负载控制教程

    在天下网吧-无盘技术-网吧天下栏目上一篇文章中,我们看到了:希望对各位网吧网管或者网吧维护,做网吧系统的各位大大有用,那么今天我们一起来看下:网众无盘6.0服务器负载控制教程 网众无盘6.0服务器的负 ...

  6. 12.1搭建LNMP、搭建wordpress、知乎、edusoho、拆分数据库、扩展web服务器、搭建文件共享、实时备份、12.2代理的定义、模块、实践

    一.回顾 1.搭建LNMP环境 2.搭建wordpress 二.搭建LNMP 1.配置官方源 2.yum安装nginx 3.配置nginx 4.创建用户 5.启动 6.上传php包 7.安装 8.配置 ...

  7. 【BI学习笔记】在Linux上安装Wyn Enterprise商业智能报表服务器

    [BI学习笔记]在Linux上安装Wyn Enterprise商业智能报表服务器 在百度文库上找来的,放到这里,避免以后丢了. 葡萄城出品的Wyn Enterprise商业智能软件的设计器和查看视图是 ...

  8. 您的服务器没有安装这个php扩展:curl ... failed,您的服务器没有安装这个PHP扩展:curl ... Failed...

    今天帮朋友安装Thinksns的时候出现下面的错误,在网上搜了一下后解决了,方法如下: 方法一(真实可用) 已经内置有php_curl.dll,在ext目录下,此DLL用于支持SSL和zlib. 在p ...

  9. php 5.4 安装xcache,安装xcache为你的PHP加速

    Xcache工作原理: Xcache是开源的opcode和var的缓存器,它可以加速PHP的原因就是Xcache通过缓存用户已经请求的PHP编译结果,将PHP编译缓存保存在服务器的内存中以便用户再次请 ...

  10. Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!

    前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...

最新文章

  1. 图解Istio原理和实践--云平台技术栈18
  2. CPU被夺走的三种状态 执行时间久了 IO操作让cpu等待 被优先级高的抢占
  3. Python教程:hashlib加密
  4. Django-MySQL数据库使用01
  5. CSS3 -webkit-animation(动画)
  6. Websphere的类加载器以及策略的简单介绍
  7. JVM调优之jstack找出最耗cpu的线程并定位代码
  8. [luogu P4198] 楼房重建(线段树 + 思维)
  9. 客服聊天系统,WeLive客服聊天系统
  10. Redis万字总结,面试必备
  11. ViewFlipper中放入两个ListView不能拖动的情况
  12. 5月第四周.COM域名增7.3万居首 域名.XXX净减22个
  13. 阅读学术论文的心得体会
  14. 解决windows server 2003安装dhcp服务器的问题
  15. Flutter 闪屏页实现
  16. 小米米家投影仪青春版怎么样,和当贝d3x怎么选全面解析让你知道
  17. 2017.08.05
  18. Nginx学习日记1
  19. numpy.random.rand(),numpy.random.randn(),numpy.random.normal()函数介绍和示例
  20. BootStrap bootstrap日历控件

热门文章

  1. Xmanager注册码激活教程
  2. !!! SQL 数据库开发基础 传智!
  3. 二台S3928P堆叠的配置文档,大家可以参考
  4. Qt5学习笔记之图标下载和转换
  5. PAT A1053 Path of Equal Weight [树的DFS遍历]
  6. 语言环境及apt工具使用方法
  7. Linux 升级glibc-2.14 失败 我遇到的问题
  8. UVa11809-Floating-Point Numbers
  9. 微软开放技术热烈祝贺开源社成立!
  10. Win8:Setting