开发者社区> 问答> 正文

WP-Lcache 更好的 WP 对象缓存解决方案



介绍

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

五、没有额外的设置选项,这个插件式即开即用的,开启以后应该能明显感知到性能提升(服务器环境下)。

展开
收起
妙正灰 2017-04-30 13:15:57 3585 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
基于英特尔 SSD 的虚拟机缓存解决SSD 立即下载
用户态高速块缓存方案 立即下载
高性能Web架构之缓存体系 立即下载