wordpess安装好之后如果不做缓存设置,那访问速度大家懂的,很缓慢,你随便一个F5一直按住多刷新几下,就直接变成cc攻击的效果,站点不能访问,擦啊,真是醉了!但是WordPress好处多多,喜欢的人很是喜欢。不过大家也可以用别的blog系统,比如说zblogemblog这两种国人自己开发的blog速度那叫一个快。
好了下面说说内存缓存memcached可以突破MySQL性能瓶颈,加速博客的访问这个问题。
安装Memcached拓展
Memcached是php的一个拓展,类似的拓展还有Memcache。少了一个d的是旧版,多了一个d是新版。新版有更好的性能,推荐安装。
简单来说:
memcache是pecl扩展库版本,原生支持php,出现更早,是老前辈;
memcached是libmemcached版本,出现较后,是新一代,因此也更加完善,推荐使用。
Ps:如果想更深入了解,可以搜索下memcachevsmemcached
我使用的是lnmp一键安装包,这里面就附带了上述两个拓展的源码。进入lnmp解压后的目录,执行下面的语句! https://www.daniao.org/addons.sh?install?memcached +———————————————————————–+ |Addons?script?for?LNMP?V1.3,?Written?by?Licess?| +———————————————————————–+ |A?tool?to?Install?cache,optimizer,accelerator…addons?for?LNMP| +———————————————————————–+ |For?more?information?please?visit?http://www.lnmp.org| +———————————————————————–+ Which?memcached?php?extension?do?you?choose: Install?php–memcache,(Discuz?x)?please?enter:?1 Install?php–memcached,?please?enter:?2 Enter?1?or?2?(Default?1): 这里选择2即可,安装时候的截图是这个样子的。
选择1,和2,都可以。但是选择2上面说了Memcached是php的一个拓展,类似的拓展还有Memcache。少了一个d的是旧版,多了一个d是新版。新版有更好的性能,推荐安装。所以我们选择2,功能上强大点,我们这点流量,你选择1也差不多不大。不用太纠结。强迫症可以一定会选择2,我懂的。
如果选择1到这下载WordPressMemcached插件
解压后,将object-cache.php上传到wp-content目录(不是wp-content/plugins/),这样WordPress会自动检查在wp-content目录下是否有object-cache.php文件,如果有,直接调用它作为WordPress对象缓存机制。
注意:如果你的服务器安装了多个WordPress,请确保每个WordPress站点使用了不同的数据库前缀,如果前缀一样,比如都是wp_,就很可能造成冲突,因为每个网站的数据都通过内存进行缓存,前缀一样就会打架啦!为你的WordPress站点开启了memcached缓存以后,就没必要安装DBCacheReloadedFix这类数据库缓存插件了。
选择2的就可以安装wordpress-pecl-memcached-object-cache
WordPress官网上的object-cache.php虽然也号称Memcached插件,然而它只支持Memcache,不支持新版的,所以不能使用。如果错误地将object-cache.php和Memcached混用的话,则会出现WordPress打不开,前台后台页面一片空白的现象。
做完上述所有步骤,系统环境就已经支持memcached缓存了。下面分享如何应用到WordPress
访问github项目页面下载插件包:
https://github.com/tollmanz/wordpress-pecl-memcached-object-cache
下载并解压得到的object-cache.php,上传到wp-content目录即可开启memcached缓存。
值得说明的是,这里还有一个大坑等着你来踩:
WordPress官网上的object-cache.php虽然也号称Memcached插件,然而它只支持Memcache,不支持新版的,所以不能使用。如果错误地将object-cache.php和Memcached混用的话,则会出现WordPress打不开,前台后台页面一片空白的现象。
这也就是经常有站长反馈WordPress启用memcached功能后,页面空白的错误原因了。不巧,可爱变在测试的时候也踩坑了,所以特别提出来,希望大家了解错误的原因,避免掉!
2、安装batcache插件
batcache可以将整个页面缓存到内存中,下次直接从内存中取出html,完全不需要计算,所以速度非常快。下载解压后其实只有advanced-cache.php是有用的,而batcache.php是一个提供情况缓存的GUI入口,并无大用。
直接在WordPress后台搜索安装?batcache,也可以从官方下载插件包:
https://wordpress.org/plugins/batcache/
然后解压得到?advanced-cache.php上传到wp-content即可。
其中advanced-cache.php有一些自定义的选项可供配置:我们打开源代码编辑调成成下面的模式。
var$max_age=3600;//Expirebatcacheitemsagedthismanyseconds(zerotodisablebatcache)
var$remote=0;//Zerodisablessendingbufferstoremotedatacenters(req/secisneversent)
var$times=2;//Onlybatcacheapageafteritisaccessedthismanytimes…(twoormore)
var$seconds=0;//…inthismanyseconds(zerotoignorethisandusebatcacheimmediately)
之后将advanced-cache.php上传到wp-content即可。
要开启缓存的话,还需要编辑wp-config.php:
define(‘WP_CACHE’,?true);
当然,插件默认只会对游客缓存,显然也是怕影响到前台登录态。缓存和动态判断一直是矛与盾、鱼和熊掌,看个人抉择吧
查看Memcached命中率
有时候我们想看看Memcached的加速效果,这时候可以利用官网上的一个工具:http://pecl.php.net/get/memcache-3.0.8.tgz
解压后提取memcache.php上传到服务器,访问后即可看到缓存效果:
ssh下面用命令方式来查看Memcached缓存情况
我们需要使用telnet命令查看,首先检测一下是否已安装telnet包
如果安装了,会返回相关版本
telnet-server-0.17-41.el5
如果没有安装,运行下面的命令,注意在root下安装
yuminstalltelnet-server
特别说明:telnet服务要依靠xinetd服务启动,所以要先安装xinetd服务。所以我们要先安装xinetd,再安装telnet-server。
telnet127.0.0.111211
Escapecharacteris‘^]’.
回车,就可以看到Memcached的缓存情况
STATpid20439?——Memcached进程的ID
STATuptime179982——进程运行时间
STATtime1382361665——当前时间
STATversion1.4.15——Memcached版本
STATlibevent1.4.13-stable
STATrusage_system40.576831
STATconnection_structures23
STATcmd_get2363348——总共获取数据的次数(等于get_hits+get_misses)
STATcmd_set279971——总共设置数据的次数
STATget_hits2286284——命中了多少次数据,也就是从Memcached缓存中成功获取数据的次数
STATget_misses77064——没有命中的次数
STATbytes_written4353057466
STATlimit_maxbytes67108864——总的存储大小,默认为64M
STATbytes4717345——当前所用存储大小
以上数据的命中率:2286284/2363348=96.7%说明当前命中率是比较高的。
如果你要清空现有数据,可以使用下面的命令:
要退出telnet,输入组合键Ctrl+]出现
直接使用kill进程ID即可,比如上面信息显示的进程ID为20439,那就使用kill20439
2.重新启动Memcached,并且修改内存等参数,样例如下(修改最大内存为1024M,最大连接数为4000):
memcached-d-m1024-uroot-l127.0.0.1-p11211-c4000-P/tmp/memcached.pid11211
-l连接的IP地址,默认是本机
-drestart重起memcached服务
-dstop|shutdown关闭正在运行的memcached服务
-dinstall安装memcached服务
-duninstall卸载memcached服务
-u以的身份运行(仅在以root运行的时候有效)
-m最大内存使用,单位MB。默认64MB
-M内存耗尽时返回错误,而不是删除项
-c最大同时连接数,默认是1024
-f块大小增长因子,默认是1.25
-n最小分配空间,key+value+flags默认是48
我目前也只是要用到memcache的动态缓存,所以对于batcache也只是初步了解状态,感兴趣的朋友可以自行搜索学习更多相关设置。
本文来源:vps主机--Memcached+Memcache(wordpress安装memcached)
本文地址:https://www.idcbaba.com/vps/2998.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。
标签: