一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

wordpress开启Memcached 内存缓存加速网站

时间:2022-06-25 19:07:05 编辑:袖梨 来源:一聚教程网

方法一,利用linux Memcached开启

测试环境:阿里云 CentOS 5.4 32位,军哥的 LNMP一键安装包配置的环境 1.0。

安装 Memcached
lnmp1.0 :进入lnmp解压后的目录,执行:./memcached.sh (这是军哥lnmp内置的安装脚本,其他自己配置的环境,自己google安装方法吧), 回车确认后就会自动安装memcache php扩展和memcached。

安装完以后,就可以正常启用了。

WordPress 开启 Memcached 缓存

下载 WordPress Memcached 插件,解压后,将 object-cache.php 上传到 wp-content 目录(不是 wp-content/plugins/),这样 WordPress 会自动检查在 wp-content 目录下是否有 object-cache.php 文件,如果有,直接调用它作为 WordPress 对象缓存机制。

注意:如果你的服务器安装了多个 WordPress,请确保每个WordPress站点使用了不同的数据库前缀,如果前缀一样,比如都是 wp_ ,就很可能造成冲突,因为每个网站的数据都通过内存进行缓存,前缀一样就会打架啦!

为你的 WordPress 站点开启了 memcached 缓存以后,就没必要安装 DB Cache Reloaded Fix 这类数据库缓存插件了。

查看 Memcached 缓存情况
我们需要使用 telnet 命令查看,首先检测一下是否已安装 telnet 包

 代码如下 复制代码

rpm -qa |grep telnet


如果安装了,会返回相关版本

 代码如下 复制代码

telnet-0.17-41.el5
telnet-server-0.17-41.el5

如果没有安装,运行下面的命令,注意在root下安装

 代码如下 复制代码

yum install xinetd
yum install telnet -server

特别说明:telnet服务要依靠xinetd服务启动,所以要先安装xinetd服务。所以我们要先安装xinetd,再安装telnet-server。

然后链接到 telnet 服务

 代码如下 复制代码

telnet 127.0.0.1 11211

如果链接成功,会返回:

 代码如下 复制代码

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

然后输入

 代码如下 复制代码

stats

回车,就可以看到 Memcached 的缓存情况

STAT pid 20439  —— Memcached 进程的ID
STAT uptime 179982 —— 进程运行时间
STAT time 1382361665 ——当前时间
STAT version 1.4.15 —— Memcached 版本
STAT libevent 1.4.13-stable
STAT pointer_size 32
STAT rusage_user 21.916668
STAT rusage_system 40.576831
STAT curr_connections 11
STAT total_connections 329
STAT connection_structures 23
STAT reserved_fds 20
STAT cmd_get 2363348 —— 总共获取数据的次数(等于 get_hits + get_misses )
STAT cmd_set 279971 —— 总共设置数据的次数
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 2286284 —— 命中了多少次数据,也就是从 Memcached 缓存中成功获取数据的次数
STAT get_misses 77064 —— 没有命中的次数
STAT delete_misses 30803
STAT delete_hits 48876
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 574591015
STAT bytes_written 4353057466
STAT limit_maxbytes 67108864 —— 总的存储大小,默认为 64M
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 262144
STAT hash_is_expanding 0
STAT bytes 4717345 —— 当前所用存储大小
STAT curr_items 5654
STAT total_items 58461
STAT expired_unfetched 17
STAT evicted_unfetched 0
STAT evictions 0
STAT reclaimed 49
END

以上数据的命中率:2286284/2363348 = 96.7% 说明当前命中率是比较高的。

如果你要清空现有数据,可以使用下面的命令:

 代码如下 复制代码

stats reset

要退出 telnet,输入组合键 Ctrl+] 出现

 代码如下 复制代码

telnet>

输入 quit 即可退出


方法二,利用WP Super cache启用Memcached内存缓存加速

一、安装Memcached Object Cache

1、WordPress默认支持Object Cache,所以在WordPress实现Memcached 就是使用Memcached把WordPress 的 Object Cache 写到内存中去,下次直接从内存中读取。

2、已经安装了WP Super cache,只要你的主机安装了Memcached组件可以直接使用Memcached内存缓存了,先下载:

  • 1、Wordpress Memcached插件:Memcached Object Cache下载

3、下载Memcached Object Cache到本地,解压里面有object-cache.php。

Memcached解压文件

4、将它上传到你的Wordpress的wp-content,注意不是wp-content/plugins/

Memcached上传到网站

二、WP Super cache启用Memcached缓存

1、将object-cache.php上传后,再进入你的Wordpress的WP Super cache的高级设置中,就能看到:使用对象缓存系统来存储缓存文件。 (实验室功能)

Memcached启用了功能

2、勾选它点击更新就已经的WP Super cache启动Memcached内存缓存,在内容中就能看到提示Memcached缓存已经启用,没有可用列表显示。

Memcached没有可用列表

三、启用Memcached缓存效果分析

1、部落当前就已经由原来的WP Super cache生成静态文件改成了Memcached缓存,在没有缓存时数据库查询是35,加载页面花的时间在1.8秒左右。

Memcached加载时间

2、WP Super cache启用了Memcached内存缓存,数据库查询保持在15个,页面加载降低到了1秒以下。

Memcached降低了时间

四、未启用Memcached内存缓存效果

1、在未安装WP Super cache时,打开页面原来是22个查询,0.36秒。

Memcached未启用

2、在WordPress用了WP Super cache而未启用Memcached内存缓存,查询数增加了3个,时间降低了0.1秒。

Memcached查询数

五、Memcached内存缓存小结

1、本篇文章只是在某一个页面数据库查询数和页面生成加载时间作了对比,对于WP Super cache的Memcached内存缓存到底有多少效果不能一概而论,不同的主机环境效果也不同。

2、为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。

热门栏目