2025-03-25 11:07:19
,某些文章具有时效性,若有错误或已失效,请在文末评论区留言Memcached 是一种高性能的分布式内存对象缓存系统,专为加速动态应用设计。通过将数据库查询结果缓存到内存中,Memcached 可以减少数据库的访问次数,降低数据库负载,从而显著提高动态 Web 应用的速度和可扩展性。
Memcached 可以存储来自调用数据库和 API,或者页面渲染生成的任意类型的数据(字符串,对象)到内存中,也可以直接到内存中去读取,它的 API 支持目前大部分流行的编程语言。
Memcached 官网: http://memcached.org
最初 Danga Interactive 为提升 LiveJournal.com 的速度而研发了 Memcached,目前,最终实现了每天已经在向一百万用户提供多达两千万次的页面访问,而这些,是由一个由 Web 服务器和数据库服务器组成的集群完成的。
Memcached的PHP扩展
PHP 有两个 Memcached 扩展:Memcache 和 Memcached,这是我们容易搞混的一个地方。
![图片[1]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/3b10e49dcf20250325092451.webp)
Memcache 扩展是用 PHP 实现的,支持面向对象和面向过程两种接口,2004年就实现了,是老的扩展,而且功能少,属性也可设置的少。
而 Memcached 扩展是基于 libmemcached 开发的,使用 libmemcached 库提供的 API 与 Memcached 服务进行交互,2009年实现,Memcached 扩展功能更加完善,支持的函数更多,比如支持批量操作,现在一般建议使用 Memcached 扩展。
Memcached可以极大提升效率
Memcached 与 WordPress 结合能极大提升效率,因为它支持 WordPress 的对象缓存(Object Cache),将数据写入内存,下次访问直接读取,相比从数据库或文件读取,速度优势明显。
因为 WordPress 的缓存机制是对象缓存(Object Cache),它是把从数据库取到数据作为对象放到缓存中,默认情况下是储存在当前 PHP 运行线程中,这样只是解决了在同线程下不再重复相同的从数据库获取数据,但是下次同样的请求,数据库的请求还是会再次请求。所以在 WordPress 实现 Memcached,其真正的意思是使用内存而非线程来充当 WordPress 对象缓存的存储介质,这样下次访问的时候就直接从内存中读取,不再从数据库获取数据,这样相比就有很大的速度优势,WordPress网站速度自然快很多,可以毫秒级打开页面。
![图片[2]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/c21b18359d20250325094809.webp)
上图是十一张网站(www.11zhang.com)使用 Memcached 之后的缓存对象的命中率,可以看出命中率是非常高的,高达99.82%,基本上可以保证所有数据都是从内存中取,所以使用 Memcached 进行缓存是非常有效的。
WordPress如何启用Memcached
首先需要明确一点,必须同时安装 Memcached 服务端和其 PHP 扩展,如果安装了 Memcached 服务端不安装扩展,那么 PHP 无法操控 Memcached。同样如果安装了 PHP Memcached 扩展,但是没有安装 Memcached 服务端,那么这个也无法使用。
下面十一张(www.11zhang.com)以宝塔环境安装 Memcached 为例,进行详细的图文教程。
1、宝塔安装Memcached程序
进入宝塔的软件商店,搜索 Memcached 软件进行安装,如下图,安装完成之后无需做任何设置。
![图片[3]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/f05174411520250325002600.webp)
2、安装PHP的Memcached扩展
选择当前网站使用的PHP程序,打开 [设置],如下图;
![图片[4]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2024/12/4a47a0db6e20241219162132.webp)
进入 [安装扩展] 找到 Memcached 拓展并安装,如下图;
![图片[5]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/ce498f48cf20250325002601.webp)
![图片[6]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/f31ed9640420250325002602.webp)
![图片[7]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/78b7323a1120250325002602.webp)
3、安装WPJAM Basic插件
WPJAM Basic插件下载地址:https://www.11zhang.com/1508.html
由于 WPJAM Basic 插件已经集成了 Memcached 的功能,下载 WPJAM Basic 之后,只需将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下即可,如下图。
![图片[8]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/3b10e49dcf20250325001039.webp)
![图片[9]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/f05174411520250325001041.webp)
WordPress 会自动检查在 wp-content 目录下是否有 object-cache.php 文件,如果有,直接调用它作为 WordPress 对象缓存机制。
WPJAM Basic 插件安装成功之后,WPJAM Basic 会自动在 WPJAM 插件菜单下的的「系统信息」下看到 Memcached 的信息,如下图,这个也可以判断你的 WordPress 网站是否已经正确安装 Memcached。
![图片[10]-使用 Memcached 内存缓存来实现 WordPress 站点秒开-十一张](https://www.11zhang.com/wp-content/uploads/2025/03/f05174411520250325094839.webp)
暂无评论内容