Hexo加速渲染速度之Fragment Cache

Hexo加速渲染速度之Fragment Cache

从使用 Hexo 到现在已经陆续写了几十篇文章了,现在发现了严重的问题,hexo generate 渲染的速度越来越慢,现在 35 篇左右,每次渲染时间到达了 20+ s,查看了官方 api,看到了 fragment_cache 局部缓存这个东西,解决了渲染速度的问题。

使用

官方文档

局部缓存。它储存局部内容,下次使用时就能直接使用缓存。

1
<%- fragment_cache(id, fn); %>

替换简单文本区域

1.我们可以将所有页面都一样的区域,如下所示,缓存下来。当下一篇文章在渲染到这个位置时,将不再渲染,直接拿缓存数据。

1
2
3
<%- fragment_cache('header', function(){
return partial('<head></head>');
}) %>

2.文章模块也可以使用,原来公共引用部分(没有和当前文章耦合的内容)使用下面的方式:

1
<%- partial('_partial/header'); %>

改进为以下代码

1
2
3
<%- fragment_cache('header', function(){
return partial('_partial/header');
}) %>

使用这个语法以后,现在的渲染速度已经提升了一倍

评论