VPS主机性能配置如果太差,则在运行Wordpress博客和Discuz! 论坛等高消耗程序时能够明显感觉出VPS有些吃力。另外,即使VPS主机的CPU、内存、硬盘I/O等性能足够好,但是在面对大流量时则有可能导致PHP执行效率降低,网页打开速度变慢等不正常的情况。

为了能够在低配置的VPS主机上Web也能跑出流畅的感觉和在面对流量高峰时服务器也能从容应对大量的应该访问请求,我们一般会给PHP安装上几点缓存加速扩展:eAccelerator,xcache和memcached,优化动态内容缓存,提高php脚本的缓存性能和执行效率。

eAccelerator是一个免费开源的PHP加速、优化、编译和动态缓存的项目,主要是把经过编译后的PHP代码缓存到共享内存中,并在用户访问的时候直接调用从而起到高效的加速作用。XCache是由国人开始的PHP加速器,在Linux下测试,高负载状况下表现良好,同时还支持ThreadSafe/Windows。

memcached与eAccelerator,xcache不同,它是一套分布式的高速缓存系统,通过在内存中缓存数据和对象来减少读取数据库的次数,一般将它用MysqL数据库的缓存加速。eAccelerator,xcache和memcached搭配起来,各自分区,加速效果更好。

本篇文章主要是分享一下如何在WDCP面板和LNMP下安装eAccelerator,xcache和memcached,如果你使用了其它的VPS主机控制面板或者LNMP一键安装包,可以参考此文来安装。更多的有关于VPS主机性能优化和加速的方法还有:

WDCP,LNMP安装PHP缓存加速扩展eAccelerator,xcache和memcached

一、WDCP安装eAccelerator

1、登录到VPS主机客户端,执行以下命令:


  1. wget http://down.wdlinux.cn/in/eac0961_ins.sh
  2. sh eac0961_ins.sh

2、然后在/www/wdlinux/目录下新建一个eaccelerator_cache目录。

3、最后在/www/wdlinux/apache_php-5.2.17/etc中找到php.ini。

4、编辑php.ini,在文件最后加入以下代码:


  1. [eaccelerator]
  2. extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"
  3. extension="eaccelerator.so"
  4. eaccelerator.shm_size="8"
  5. eaccelerator.cache_dir="/www/wdlinux/eaccelerator_cache"
  6. eaccelerator.enable="1"
  7. eaccelerator.optimizer="1"
  8. eaccelerator.check_mtime="1"
  9. eaccelerator.debug="0"
  10. eaccelerator.filter=""
  11. eaccelerator.shm_max="0"
  12. eaccelerator.shm_ttl="3600"
  13. eaccelerator.shm_prune_period="3600"
  14. eaccelerator.shm_only="0"
  15. eaccelerator.compress="1"
  16. eaccelerator.compress_level="9"

5、重启服务器,刷新探针,这时就能看到eAccelerator安装成功了。

二、WDCP安装xcache

1、登录到VPS主机客户端,执行以下命令:


  1. wget http://xcache.lighttpd.net/pub/Releases/3.0.3/xcache-3.0.3.tar.gz
  2. tar -zxvf xcache-3.0.3.tar.gz
  3. cd xcache-3.0.3
  4. /www/wdlinux/php/bin/phpize
  5. ./configure -with-php-config=/www/wdlinux/php/bin/php-config -enable-xcache -enable-xcache-coverager -enable-inline-optimization -disable-debug
  6. make
  7. make install

2、然后将以下代码加入到php.ini中。(可以放在文件的最后面)


  1. [xcache-common]
  2. extension = xcache.so
  3. [xcache]
  4. xcache.shm_scheme = "mmap"
  5. xcache.size = 160M
  6. xcache.count = 1
  7. xcache.slots = 8K
  8. xcache.ttl = 0
  9. xcache.gc_interval = 0
  10. xcache.var_size = 4M
  11. xcache.var_count = 1
  12. xcache.var_slots = 8K
  13. xcache.var_ttl = 0
  14. xcache.var_maxttl = 0
  15. xcache.var_gc_interval = 300
  16. xcache.var_namespace_mode = 0
  17. xcache.var_namespace = ""
  18. xcache.readonly_protection = Off
  19. xcache.mmap_path = "/tmp/xcache"
  20. xcache.coredump_directory = ""
  21. xcache.coredump_type = 0
  22. xcache.disable_on_crash = Off
  23. xcache.experimental = Off
  24. xcache.cacher = On
  25. xcache.stat = On
  26. xcache.optimizer = Off
  27. [xcache.coverager]
  28. xcache.coverager = Off
  29. xcache.coverager_autostart = On
  30. xcache.coveragedump_directory = ""

3、重启VPS,生效。

三、WDCP安装APC缓存

1、APC全称是Alternative PHP Cache,是PHP PECL中的一个扩展,APC的缓存分两部分:系统缓存和用户数据缓存。系统缓存是APC把PHP文件源码的编译结果缓存起来,然后在每次调用时先对比时间标记。如果未过期,则使用缓存的中间代码运行。用户数据缓存是缓存由用户在编写PHP代码时用apc_store和apc_fetch函数操作读取、写入的。

2、在WDCP上安装APC缓存方法也很简单,执行以下命令:


  1. wget http://pecl.php.net/get/APC-3.0.19.tgz
  2. tar xvzf APC-3.0.19.tgz
  3. cd APC-3.0.19
  4. /www/wdlinux/php/bin/phpize
  5. ./configure -enable-apc -enable-apc-mmap -with-php-config=/www/wdlinux/php/bin/php-config
  6. make
  7. make install

3、然后编辑php.ini文件,在[eaccelerator] extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"下方加入以下代码:


  1. extension ="/apc.so"
  2. enabled = 1
  3. apc.cache_by_default = on
  4. apc.shm_segments = 1
  5. apc.shm_size = 32
  6. apc.ttl = 600
  7. apc.user_ttl = 600
  8. apc.num_files_hint = 0
  9. apc.write_lock = On

4、重启VPS,生效。(点击放大)

5、这是我的WDCP成功安装了eAccelerator、xcache、APC缓存后,php.ini的代码:


  1. [xcache-common]
  2. extension = xcache.so
  3. [xcache]
  4. xcache.shm_scheme = "mmap"
  5. xcache.size = 160M
  6. xcache.count = 1
  7. xcache.slots = 8K
  8. xcache.ttl = 0
  9. xcache.gc_interval = 0
  10. xcache.var_size = 4M
  11. xcache.var_count = 1
  12. xcache.var_slots = 8K
  13. xcache.var_ttl = 0
  14. xcache.var_maxttl = 0
  15. xcache.var_gc_interval = 300
  16. xcache.var_namespace_mode = 0
  17. xcache.var_namespace = ""
  18. xcache.readonly_protection = Off
  19. xcache.mmap_path = "/tmp/xcache"
  20. xcache.coredump_directory = ""
  21. xcache.coredump_type = 0
  22. xcache.disable_on_crash = Off
  23. xcache.experimental = Off
  24. xcache.cacher = On
  25. xcache.stat = On
  26. xcache.optimizer = Off
  27. [xcache.coverager]
  28. xcache.coverager = Off
  29. xcache.coverager_autostart = On
  30. xcache.coveragedump_directory = ""
  31. [eaccelerator]
  32. extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"
  33. extension ="/apc.so"
  34. enabled = 1
  35. apc.cache_by_default = on
  36. apc.shm_segments = 1
  37. apc.shm_size = 32
  38. apc.ttl = 600
  39. apc.user_ttl = 600
  40. apc.num_files_hint = 0
  41. apc.write_lock = On
  42. extension="eaccelerator.so"
  43. eaccelerator.shm_size="8"
  44. eaccelerator.cache_dir="/www/wdlinux/eaccelerator_cache"
  45. eaccelerator.enable="1"
  46. eaccelerator.optimizer="1"
  47. eaccelerator.check_mtime="1"
  48. eaccelerator.debug="0"
  49. eaccelerator.filter=""
  50. eaccelerator.shm_max="0"
  51. eaccelerator.shm_ttl="3600"
  52. eaccelerator.shm_prune_period="3600"
  53. eaccelerator.shm_only="0"
  54. eaccelerator.compress="1"
  55. eaccelerator.compress_level="9"

四、WDCP安装memcached

1、WDCP官方已经给出了安装memcached的方法,执行以下命令:


  1. wget -c http://down.wdlinux.cn/in/memcached_ins.sh
  2. sh memcached_ins.sh
  3. 服务启动或停止
  4. service memcached start|stop|restart

2、选择你的PHP版本,安装完成。

3、然后到WDCP控制面板中,点击memcached设置,没有提示让你安装memcached扩展,就表示WDCP安装memcached成功了。

4、当然你也可以在phpinfo中看到memcached是否已经编译安装。

五、LNMP安装eAccelerator,xcache和memcached

1、LNMP安装eAccelerator,xcache和memcached的方法官方都已经给出,安装比较简单,进入lnmp解压后的目录,执行:./eaccelerator.sh 可以快速安装eAccelerator。

2、eaccelerator 0.9.5.3 支持PHP 5.2,如需此版本,输入 old 回车。eaccelerator 0.9.6.1 支持PHP 5.2、5.3,如需此版本,输入 new 回车。eaccelerator 1.0-dev 支持PHP 5.2、5.3、5.4,如需此版本输入 dev 回车。

3、执行:./xcache.sh 可以快速安装xcache,有两个版本可以选择,分别是XCache 2.0.0 和XCache 3.0.1。

4、执行:./memcached.sh 可以快速安装memcached。

5、最后重启VPS主机,重新探针,就可以看到LNMP安装eAccelerator,xcache和memcached成功了。

六、VPS主机安装PHP缓存扩展小结

1、本篇文章只给出了WDCP和LNMP安装eAccelerator,xcache和memcached的方法,如果你使用了其它的VPS控制面板,建议参考官方的文档来安装,如果自己单独配置的话会比较麻烦,且容易出错。

2、eAccelerator,xcache是PHP缓存扩展,memcached、APC缓存是数据库缓存扩展,一般两者只有要安装其中一个即可,不要贪多。另外,实际测试中发现当Cache数量超过一定阀值的时候,APC的性能不如Memcache。

文章出自:免费资源部落 http://www.freehao123.com/ 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

WDCP,LNMP安装PHP缓存加速扩展eAccelerator,xcache和memcached的更多相关文章

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

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

  2. eAccelerator、memcached、xcache、APC 等四个加速扩展的区别

    折腾VPS的朋友,在安装好LNMP等Web运行环境后都会选择一些缓存扩展安装以提高PHP运行速度,常被人介绍的有eAccelerator.memcached.xcache.Alternative PH ...

  3. PHP缓存加速插件 XCache 、 ZendOpcache 安装

    PHP缓存原理 当客户端请求一个PHP程序时,服务器的PHP引擎会解析该PHP程序,并将其编译为特定的操作码(OperateCode,简称opcode)文件,该文件是PHP代码的一种二进制表示方式.默 ...

  4. lnmp一键安装环境添加redis扩展及作为mysql的缓存

    lnmp一键安装环境添加redis扩展 Redis-benchmark      压力测试工具Redis-check-aof      检查redis持久化命令文件的完整性Redis-check-du ...

  5. 给lnmp一键包中的nginx安装openresty的lua扩展

    lnmp一键包(https://lnmp.org)本人在使用之后发现确实好用,能帮助我们快速搭建起lnmp.lamp和lnmpa的web生产环境,因此推荐大家可以多试试.但有的朋友可能需要使用open ...

  6. lnmp安装exif扩展

    lnmp安装exif扩展 1.找到位置 cd /usr/local/lnmp1.4-full/src 2.解压php sudo bzip2 -d php-5.6.31.tar.bz2 sudo tar ...

  7. PHP7安装Memcache+Memcached缓存加速WordPress教程

    PHP7安装Memcache+Memcached缓存加速WordPress教程 2016年1月19日 6,691 Views 生活方式 PHP7最显著的变化就是性能的极大提升,已接近Facebook开 ...

  8. LNMP安装了哪些软件?安装目录在哪?

    LNMP官网:http://lnmp.org/faq/lnmp-software-list.html LNMP一键安装包除去安装所必须的依赖包,还会默认安装以下软件: Nginx.MySQL/Mari ...

  9. php 缓存 加速缓存

    PHP四大加速缓存器opcache,apc,xcache,eAccelerator eAccelerator,xcache,opcache,apc(偏数据库缓存,分系统和用户缓存)是PHP缓存扩展, ...

随机推荐

  1. Nginx配置文件nginx.conf具体解释

    #定义Nginx执行的用户和用户组user www www; #nginx进程数.建议设置为等于CPU总核心数. worker_processes 8; #全局错误日志定义类型,[ debug | i ...

  2. 如何用visio(word)绘制图片表格

    1.用visio是插入excel表格,但是不能差如公示了,修改的话也是进入了excel修改. 2.在word里修改即可,word表格可以插入公式,然后阿银玉兰或者转给pdf截图就好

  3. 内存溢出导致jenkins自动部署到tomcat失败

    原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...

  4. android加密DESede/CBC/PKCS5Padding

    from://http://my.oschina.net/u/269082/blog/56163 工作中需要和HPH对接,接口一些敏感信息,讨论后用3DES加密,由于我做的android邮件客户端是依 ...

  5. Unity 动画知识之一

    Unity现在已经用的很广泛啦,可是却一直没有什么美术向的教程. 程序用方面的内容在各个论坛都有讨论,但是美术似乎很弱势啊. 明明美术也很需要掌握引擎方面的内容嘛! 山谷里的野百合还有春天呢 我们美术 ...

  6. Eclipse SDK Android Studio 下载地址

    https://developer.android.com/sdk/index.html#download 这个网址可以下载需要的东西,FQ的话可以给 xifulinmen@gmail.com 发一个 ...

  7. [Android Pro] AndroidStudio IDE界面插件开发(进阶篇之Editor)

    转载请注明出处:[huachao1001的专栏:http://blog.csdn.net/huachao1001/article/details/53885981] 我们开发AndroidStudio ...

  8. Gradle 简介

    一.简介 Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和 ...

  9. LaTeX技巧205:使用split输入多行公式技巧

    我们在输入多行公式的时候,split,array,multiline,align,aligned等等都是我们可以选用的环境,这里介绍split的使用方法.演示效果图: 演示代码:\documentcl ...

  10. 使用模拟对象(Mock Object)技术进行测试驱动开发

    敏捷开发 敏捷软件开发又称敏捷开发,是一种从上世纪 90 年代开始引起开发人员注意的新型软件开发方法.和传统瀑布式开发方法对比,敏捷开发强调的是在几周或者几个月很短的时间周期,完成相对较小功能,并交付 ...