问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何memcached优化wordpress

发布网友 发布时间:2022-04-14 07:51

我来回答

2个回答

懂视网 时间:2022-04-14 12:12

说得直白简单一点,它就是把最常访问的那些内容缓存在内存中,有新访客到来的时候,先从内存中找,找到了就直接返回,否则再去查数据库,这样就极大地提高了性能。
有人可能会使用WP Super Cache这个WordPress插件来为WP提速(而且它的效果似乎更好),但此插件会生成大量缓存文件,占用大量磁盘空间,从而影响WordPress备份文件的大小,这对我来说并不是一个好结果,因此,我没有用它。
文章来源:http://www.codelast.com/
那么,在WordPress中,我们怎么使用memcached呢?这不是仅仅安装memcached软件就可以做到的,还要和PHP结合起来,所以涉及到好几个部分,下面分别阐述:
【1】安装memcached
首先我们要从memcached的官方网站下载一个稳定版,例如,我下载的是 1.4.15 版,然后准备安装它。
但是memcached的根基是一个网络开发库 libevent,所以,你要先安装 libevent。我下载的是 2.0.21(稳定版),解压出来,然后编译安装:

./configure --prefix=/usr/local/libevent
make
make install

注意我安装到了 /usr/local/libevent 目录下。
然后编译安装memcached:

./configure --with-libevent=/usr/local/libevent/ --prefix=/usr/local/memcached
make
make install

注意我指定了libevent的安装目录,并且把memcached安装到了 /usr/local/memcached 目录下。
文章来源:http://www.codelast.com/
【2】启动memcached
安装了memcached软件之后,我们就要启动它了:

cd /usr/local/memcached/bin/
./memcached -d -m 256 -u root -t 64 -r

-d 表示以守护进程的方式启动memcached程序,-m 256 表示最大可使用256M的内存,-u root 我不太明白有什么用(网上的某些教程里有这样用的),-t 64 表示使用64个线程,-r 表示最大化core文件的限制。
这样启动之后,memcached就开始在默认端口 11211 上监听了。
现在再看看进程中是否已经有了memcached:

[root@localhost]# ps -ef | grep memcached
root 2180 1 0 22:29 ? 00:00:00 ./memcached -d -m 256 -u root -t 64 -r

最后再把它加入开机启动项,编辑 /etc/rc.local 文件,添加一句:

/usr/local/memcached/bin/memcached -d -m 256 -u root -t 64 -r

文章来源:http://www.codelast.com/
【3】安装PHP的memcached扩展
为了能让WordPress用上我们刚安装的memcached,需要先为PHP安装一个memcached扩展。
到这个页面去下载一个稳定版的memcached扩展,例如,我下载的是2.2.7版,然后解压:

wget http://pecl.php.com/get/memcache-2.2.7.tgz
tar zxf memcache-2.2.7.tgz
cd memcache-2.2.7

如果你没这样装过PHP扩展的话,你会很奇怪地发现,解压出来的目录下竟然没有 configure 文件!没有 configure 文件如何能生成Makefile,如何能编译安装呢?
这个时候,我们需要用PHP安装时附带的 phpize 程序来帮助我们生成configure:

cd memcache-2.2.7
/usr/local/php/bin/phpize

注意,我的PHP是安装在 /usr/local/php 目录下的,如果你的目录不同,请作相应的修改。顺利的话,就会发现生成了configure文件;如果遇到了以下错误:

Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.

文章来源:http://www.codelast.com/
那么,就需要安装以下两个package(如果是Ubuntu,就apt-get install,这里就不废话了):

yum install m4
yum install autoconf

然后再重新执行phpize命令,再编译安装:

make
make install

会提示:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

然后修改你的php.ini配置文件,在最后添加:

[memcache]
extension=memcache.so

最后重启你的web service,如果你用的是nginx,那么需要重启 php-fpm 和 nginx:

/etc/init.d/php-fpm restart
/etc/init.d/nginx restart

文章来源:http://www.codelast.com/
【4】安装、配置WordPress的memcached插件
上面的步骤已经够麻烦了,但是到了这一步,你就快成功了。
在WordPress后台的插件安装页面中,搜索“memcached”,会找到“Memcached Object Cache”插件,安装之,然后这里要注意了,与平常安装插件不一样的是,安装完这个插件之后,不要“启用”它,否则会报错。
我们需要手工把安装插件得到的 object-cache.php 文件拷贝到WordPress的 wp-content 目录下,它就可以开始工作了(有点奇怪吧):

cp wp-content/plugins/memcached/object-cache.php wp-content/

然后memcached就开始为你的WordPress默默地“做奉献”了,尽管你看不到它。如果你不想再管它,那么到这一步就可以收手了,不过,你可能还想知道它工作得怎么样,那么你就要继续看下去。
文章来源:http://www.codelast.com/
【5】安装memcached的管理插件
同样在WordPress的插件安装界面中搜索“WP Memcached Manager”,安装此插件,启用它,即可在WordPress管理后台的左侧菜单中,看到多出了一项“Memcached”:

WordPress memcached menu

点击“Edit servers”,如下图所示的默认server:

WordPress memcached manager add server

然后再回到“Memcached”菜单,就可以看到下拉列表中多出了一项,即我们刚添加的server,点击“Manage Server”,就会看到关于memcached的一些统计信息啦:

WordPress memcached manager manage server

这下踏实了,我们知道memcached确实在工作了,并且hit和miss的数据都知道了。
文章来源:http://www.codelast.com/
【6】进一步优化
有一个叫做Batcache的WordPress插件,能为我们上面的工作锦上添花,建议在WordPress后台安装它(不需要配置)。它的原理是:
在没有Batcache、有memcached的情况下,访问WordPress页面时,需要从内存中获取多个缓存对象,而Batcache可以把整个页面作为一个对象缓存,从而从内存中只需要获取一个缓存对象,这样就提高了速度。

至此,我们整个安装、配置memcached的过程就结束了,在访问量很大的时候,你的WordPress站点的性能一定会得到质的提升。

热心网友 时间:2022-04-14 09:20

首先你要保证你的php环境已安装memcached扩展
然后wordpress的配置文件里,添加:
define('WP_CACHE', true);

进行缓存启用。后台插件里下载memcached插件,下载后拷贝object-cache.php到wp-content目录下,就完成了。
要使用cache,可以参考wp_cache_set和wp_cache_get函数方法
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
梦幻西游怎样查看自己怎么加的属性点阿? 我好长时间没玩了 .. 怎么... 梦幻西游怎么查看我各项加了多少点 卤肉料的配方 卤肉上色最好的配方前十 三国中曹操有几个儿子 曹植的意思是什么 曹操有多少个儿子?其中姓名叫什么? 简谱中1=c2/4是什么意思?别说几节几拍我不知道节和拍是什么意思 简谱四分之二什么意思 ...是鸡膏吗 放在老汤里行吗 怎么才能容于水 谢谢 怎么使用? 20007年股市最高点是多少 2007年股市最高点时的市值 有没有做凉皮,会蒸面筋的呀?面筋怎么才能出锅后不收缩呀?求经验 买入基金按哪天净值算? 凉皮上锅蒸的时候为什么会缩小? 文章写出了鄱阳湖的哪些特点? wordpress 怎么判断用了memcached加速 为什么说鄱阳湖是我国最大的淡水湖 请问有谁可以介绍下鄱阳湖吗,里面那个响水滩,有什么特色? 读了我爱潘阳湖,你认为潘阳湖有哪些特点,这些特点是这样表达的 鄱阳湖自然资源 鄱阳湖的特点有那两个? 鄱阳湖有什么特点至少5个 2019房产税超过几套才会征收 夏季的鄱阳湖的风景特点是什么 鄱阳湖的特点 苹果6来电电话后面的闪光灯怎么开 iphone6 闪光灯提醒来电怎么设置? 苹果iphone6闪光灯提醒来电怎么设置 乔丹的鞋子为什么鞋盒是蜡笔小新的 属鼠1984年12月8日在2014年运势如何 1984属鼠水瓶座,B血型2010运势如何 1984年8月初六今年的财运如何属鼠的 我老公属鼠的,84年12月14生日,我想知道他今年运势如何?适合做生意吗? 1984年二月初一晚十一点多出生的属鼠这几年的命运与婚姻运势如何 小学一年级能听懂双师直播课吗? 求空军汽车兵之歌歌曲,车轮滚滚,喇叭声声我们是空军汽车兵。牵飞机,运导弹,战训保障为打赢。这首歌 求空军汽车兵之歌 求:空军汽车兵之歌 学习强国初中一年级直播时间是多少? 用锅看电视,怎么看河南省电视台的一年级课程? 84年属鼠4月6日早上五点今年运势 求空军汽车兵之歌,要原唱或者翻唱的都可以,不要歌词!!! 【中国农业银行】尊敬的持卡人信用卡存在异常,我行已*该卡片交易,怎么办?_百度问一问 求空军汽车兵之歌,原唱,翻唱也可以!谢谢,邮箱568142538@qq.com 【中国农业银行】尊敬的持卡人,您尾号2798的信用卡存在异常,我行已*该卡片交易,这是什么情况? 地空导弹兵战术原则是什么? 数字网络电视怎么收看河南省今天播出约同步名校课堂一年级免费直播课? 求几首打AVA时听的音乐。类型就和战士之歌。苏维埃进行曲差不多类型的音乐 郭芳芳的相关新闻