使用Batcache将Memcached多个缓存对象以页为单位整合加速
之前缙哥哥已经讲过,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右侧图像描述是否为高级缓存插件。如果不是,请根据提示操作。详情请看下图:
成功后可使用无痕窗口多次刷新某个页面进行测试。查看源代码,应该在/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