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主机客户端,执行以下命令:
wget http://down.wdlinux.cn/in/eac0961_ins.sh
sh eac0961_ins.sh
2、然后在/www/wdlinux/目录下新建一个eaccelerator_cache目录。
3、最后在/www/wdlinux/apache_php-5.2.17/etc中找到php.ini。
4、编辑php.ini,在文件最后加入以下代码:
[eaccelerator]
extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"
extension="eaccelerator.so"
eaccelerator.shm_size="8"
eaccelerator.cache_dir="/www/wdlinux/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="3600"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
5、重启服务器,刷新探针,这时就能看到eAccelerator安装成功了。
二、WDCP安装xcache
1、登录到VPS主机客户端,执行以下命令:
wget http://xcache.lighttpd.net/pub/Releases/3.0.3/xcache-3.0.3.tar.gz
tar -zxvf xcache-3.0.3.tar.gz
cd xcache-3.0.3
/www/wdlinux/php/bin/phpize
./configure -with-php-config=/www/wdlinux/php/bin/php-config -enable-xcache -enable-xcache-coverager -enable-inline-optimization -disable-debug
make
make install
2、然后将以下代码加入到php.ini中。(可以放在文件的最后面)
[xcache-common]
extension = xcache.so
[xcache]
xcache.shm_scheme = "mmap"
xcache.size = 160M
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.var_namespace_mode = 0
xcache.var_namespace = ""
xcache.readonly_protection = Off
xcache.mmap_path = "/tmp/xcache"
xcache.coredump_directory = ""
xcache.coredump_type = 0
xcache.disable_on_crash = Off
xcache.experimental = Off
xcache.cacher = On
xcache.stat = On
xcache.optimizer = Off
[xcache.coverager]
xcache.coverager = Off
xcache.coverager_autostart = On
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缓存方法也很简单,执行以下命令:
wget http://pecl.php.net/get/APC-3.0.19.tgz
tar xvzf APC-3.0.19.tgz
cd APC-3.0.19
/www/wdlinux/php/bin/phpize
./configure -enable-apc -enable-apc-mmap -with-php-config=/www/wdlinux/php/bin/php-config
make
make install
3、然后编辑php.ini文件,在[eaccelerator] extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"下方加入以下代码:
extension ="/apc.so"
enabled = 1
apc.cache_by_default = on
apc.shm_segments = 1
apc.shm_size = 32
apc.ttl = 600
apc.user_ttl = 600
apc.num_files_hint = 0
apc.write_lock = On
4、重启VPS,生效。(点击放大)
5、这是我的WDCP成功安装了eAccelerator、xcache、APC缓存后,php.ini的代码:
[xcache-common]
extension = xcache.so
[xcache]
xcache.shm_scheme = "mmap"
xcache.size = 160M
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.var_namespace_mode = 0
xcache.var_namespace = ""
xcache.readonly_protection = Off
xcache.mmap_path = "/tmp/xcache"
xcache.coredump_directory = ""
xcache.coredump_type = 0
xcache.disable_on_crash = Off
xcache.experimental = Off
xcache.cacher = On
xcache.stat = On
xcache.optimizer = Off
[xcache.coverager]
xcache.coverager = Off
xcache.coverager_autostart = On
xcache.coveragedump_directory = ""
[eaccelerator]
extension_dir="/www/wdlinux/apache_php-5.2.17/lib/php/extensions/no-debug-zts-20060613/"
extension ="/apc.so"
enabled = 1
apc.cache_by_default = on
apc.shm_segments = 1
apc.shm_size = 32
apc.ttl = 600
apc.user_ttl = 600
apc.num_files_hint = 0
apc.write_lock = On
extension="eaccelerator.so"
eaccelerator.shm_size="8"
eaccelerator.cache_dir="/www/wdlinux/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="3600"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
四、WDCP安装memcached
1、WDCP官方已经给出了安装memcached的方法,执行以下命令:
wget -c http://down.wdlinux.cn/in/memcached_ins.sh
sh memcached_ins.sh
服务启动或停止
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/ 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。
|
请发表评论