介绍
WP LCache 是 Pantheon(高性能管理型 WP 托管商)开发的 WordPress 对象缓存解决方案,其基于 Lcache 作为底层库,使用 APCu 作为对象缓存后端。
需求
Pantheon 的对象缓存解决方案本来先采用 Memcached 后来使用 Redis,但它们发现,两者都要通过 TCP/IP 进行通信,即便数据量很小但是请求一大的时候就会造成性能瓶颈,因此 Pantheon 转向研究 APCu 了。
APC/APCu 作为 WordPress 的对象缓存后端在高性能 WordPress 托管中是非常普遍的,例如MediaTemple 和其母公司 Godaddy 均采用 APC 作为 WP 对象缓存后端,Cloudways 也是用 APCu 作为默认对象缓存后端 等等。
说明
对于高流量的动态页面加载,就必须有一个高速持久的对象缓存,Pantheon 的 Lcache 是这样设计以便 APCu 可以拥有 Redis 一样的固化特性。
Lcache 分 本地 L1 缓存(APCu)和 中央 L2(数据库) 缓存(local L1 and central L2 caches) 当 PHP 重启(或者关闭后开机)的时候,会讲数据库的数据重新写入 APCu 即内存中实现缓存固化。
Pantheon 给出的 New Relic 测试结果。 在介绍文档中,datacenter-local (but not host-local) 中使用 Lcache 比使用 Redis 减少 20% 的页面生成时间。
米饭粑的体验来看,使用 WP-Lcache 代替 Redis Object Cache 作为 WordPress 的对象缓存后,有非常可观的性能提升,至少是感觉的出后台加载速度提升的。
安装
要求: PHP 大于等于 5.6 ,APCu 4.0.11 或以上,PHP7 下性能表现更加。
一、下载
WP-Lcache 并上传,也可以在后台搜索 WP-Cache 安装。
二、激活插件
三、手动创建 wp-content/object-cache.php 文件,内容:
<?php
# Engage LCache object caching system.
# We use a 'require_once()' here because in PHP 5.5+ changes to symlinks
# are not detected by the opcode cache, making it frustrating to deploy.
#
# More info: http://codinghobo.com/opcache-and-symlink-based-deployments/
#
$lcache_path = dirname( realpath( __FILE__ ) ) . '/plugins/wp-lcache/object-cache.php';
require_once( $lcache_path );
四、WP-CLI 方式
如果安装失败了,可以考虑使用 WP-CLI(
安装教程) 进行安装,运行即可:
wp plugin install wp-lcache --activate && wp lcache enable
五、没有额外的设置选项,这个插件式即开即用的,开启以后应该能明显感知到性能提升(服务器环境下)。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。