要知道wordpress真的很繁重,所以速度优化是必不可少的。尽管网站加了CDN(又拍云) ,但主要是解决了服务器文件分发的问题,速度提升依然很有限。
钻芒博客用的是腾讯云学生机,1h2g 1m,另外还挂其他两个wordpress。在看了Denis(我爱水煮鱼)的文章后,我也给钻芒博客部署了Memcached内存缓存,网站速度瞬即提升数倍

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

Memcached是什么?

Memcached 是一种高性能的分布式内存对象缓存系统。在动态应用,Memcached 既能提高访问的速度,同时还减低了数据库的负载。
Danga Interactive 为提升 LiveJournal.com 的速度研发了 Memcached。目前,LiveJournal.com 每天已经在向一百万用户提供多达两千万次的页面访问。而这些,是由一个由Web 服务器和数据库服务器组成的集群完成的。Memcached 几乎完全放弃了任何数据都从数据库读取的方式,同时,它还缩短了用户查看页面的速度、更好的资源分配方式,以及 Memcache 失效时对数据库的访问速度。

 WordPress 和 Memcached

由于 WordPress 默认支持 Object Cache,所以在 WordPress 实现 Memcached 就是使用 Memcached 把 WordPress 的 Object Cache 写到内存中去,下次直接从内存中读取。相比直接从数据库去读取数据,或者从 Object Cache 数据存到文件,然后从硬盘中读取,Memcached 有很大的速度优势。

 Memcached 命中率

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

上图是使用 Memcached 之后的缓存对象的命中率,可以看出命中率96%,基本上可以保证所有数据都是从能内存中取,所以使用 Memcached 进行缓存是非常有效的。

WordPress 如何启用 Memcached 缓存

结合wpjam Basic 插件,下面的方法需配合wpjam Basic 插件使用。(引至我爱水煮鱼博客

首先需要明确一点,必须同时安装 Memcached 服务端和其 PHP 扩展。

如果安装了 Memcached 服务端不安装扩展,那么 PHP 无法操控 Memcached。同样如果安装了 PHP Memcached 扩展,但是没有安装 Memcached 服务端,那么这个就无法使用。

1. 首先服务器需要安装 Memcached 服务端,然后 PHP 需要安装上 Memcached 的扩展,再次注意 PHP 有两个扩展:PHP Memcache 扩展 和 PHP Memcached 扩展,两者仅仅相差一个字母 D,你可以通过 phpinfo() 这个 PHP 函数来查看到底安装的是哪个扩展,一定要使用 PHP Memcached 扩展。

如果你使用了宝塔面板。

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

在软件管理安装Memcached 服务端

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

然后在你的php中添加Memcached 拓展

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

Ps:插件的路径如右图

2. WPJAM Basic 插件已经集成 Memcached 的功能,将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下,注意不是 wp-content/plugins/。

3. WordPress 会自动检查在 wp-content 目录下是否有 object-cache.php 文件,如果有,直接调用它作为 WordPress 对象缓存机制。

WordPress 启用 Memcached 内存缓存来提高网站速度-钻芒博客

4. 安装成功之后,WPJAM Basic 会自动在 WordPress > WPJAM 菜单下的的「系统信息」 下看到 Memcached 的信息: