租号玩代理申请
A-A+

使用Batcache将Memcached多个缓存对象以页为单位整合加速

2020年12月01日 建站相关 暂无评论 阅读 182 次

之前缙哥哥已经讲过,WordPress 启用 Memcached 这样的内存缓存之后,每次访问 WordPress 页面,以此来提速,缙哥哥初步估计速度上至少提升了5-10倍以上。但是每次访问都要从内存中获取多个缓存对象。而今天分享的缓存插件 Batcache 主要就是解决这个问题,它是基于 Memcached 的 WordPress 缓存插件,它的工作原理是:把当前整个页面作为一个对象缓存到内存中,这样再次访问 WordPress 页面的时候,直接获从内存中获取这个对象即可,速度极快。

Batcache使用教程
首先得自己确认下已经安装并正确开启了Memcached内存缓存。

WordPress官方下载 https://wordpress.org/plugins/batcache/
advanced-cache.php单文件: https://zwjdujin.ctfile.com/fs/5210373-371148923
解压得到advanced-cache.php文件,上传至/wp-content/目录。

在 wp-config.php 中的/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */上方添加以下代码:

//开启Batcache默认缓存 - https://www.im2828.com/871.html
define('WP_CACHE', true);

进入 WordPress 仪表盘 → 已安装插件 → Drop-in高级插件,查看advanced-cache.php右侧图像描述是否为高级缓存插件。如果不是,请根据提示操作。详情请看下图:
wordpress高级缓存插件

成功后可使用无痕窗口多次刷新某个页面进行测试。查看源代码,应该在/html之后可以看到一些 Batcache 状态代码,记得退出登陆查看。

Batcache参数注释
以下翻译由缙哥哥那蹩脚的英语水平注释,错了不负责。小伙伴们可根据自己的需求进行更改,主要是修改前面4行参数。

var $max_age = 300; // 缓存过期时间(0表示禁用batcache)
var $remote = 0; // 禁止向远程数据中心发送缓冲区(从不发送req/sec)
var $times = 2; // 一个页面被访问了多少次之后进行缓存(两个或两个以上)
var $seconds = 0; // …在这么多秒内(0表示忽略它,立即使用batcache)
var $group = 'batcache'; // memcached组的名称。您可以通过更改此选项来模拟缓存刷新。
var $unique = array(); // 如果您有条件地提供不同的内容,请将变量值放在这里。
var $vary = array(); // 函数数组,用于create_function。返回值被添加到上面的$unique中。
var $headers = array(); // 在这里添加头作为name=>值或name=>数组(值)。这些将与缓存中的每个响应一起发送。
var $cache_redirects = false; // 设置true启用重定向缓存。
var $redirect_status = false; // 这将在重定向期间设置为响应代码。
var $redirect_location = false; // 这被设置为重定向位置。
var $use_stale = true; // 更新缓存时是否可以返回过期的缓存响应?
var $uncached_headers = array('transfer-encoding'); // 这些头将永远不会缓存。应用函数。
var $debug = true; // 设置false以隐藏batcache信息 <!-- comment -->
var $cache_control = true; // 将false设置为禁用Last-Modified和Cache-Control头
var $cancel = false; // 更改此选项以取消输出缓冲区。使用batcache_cancel ();
var $noskip_cookies = array( 'wordpress_test_cookie' ); // cookie的名称——如果它们存在并且缓存通常会被绕过,那么不要绕过它。

如果你一个服务器有多个WordPress站点,请阅读:同一服务器多个WordPress站点使用Memcached冲突的解决办法

转自:https://www.dujin.org/13243.html

京东空调大促销