1

随着文件数量的增加,Hexo 花费越来越多的时间使用“hexo g”生成静态 HTML 文件。为什么 Hexo 会重建每一个 '.md' 文件,而不是将自身限制在修改过的文件中?

我的 Hexo 版本是 3.0.1。

4

3 回答 3

3

这取决于几件事,但主要瓶颈是:

主题不使用缓存

作者在去年引入了片段缓存来缓存静态部分(页眉、页脚、侧边栏)。
由主题作者决定使用它来加速页面生成。
您可以尝试更改为其他主题,看看是否有任何不同。

highlight.js 语言检测

如果自 3.0 起没有指定语言,highlight.js 将尝试自动检测代码块中的语言,这需要相当长的时间。
考虑使用plainandauto_detect选项(#​​1124),看看是否有任何不同。


已经提到,但没有承诺,使用增量方法来生成静态 HTML。

我使用 Hexo 的工作流程是:
-hexo serve预览你更新
你在这一步迭代修改
使用hexo-livereload保存你主动重新加载页面
- hexo generate/hexo deploy发布你的网站

于 2015-07-16T09:22:12.347 回答
0

你明确告诉 Hexo 重建每一个帖子。每次添加新文件时,Node 将花费更长的时间来解释 .md 文件。

命令 'hexo -g' 可以分为两部分: 'hexo' 表示您希望 Hexo 完成以下命令。“-g”是“生成”的缩写。使用不带任何修饰符的“生成”一词是告诉 Hexo 它应该重建 Hexo 文件夹中可用的每个帖子。

以我有限的经验,开发人员只有在以下情况下才使用“hexo -g”:

  • 执行首次设置或维护
  • 无法回忆起他们未发表的帖子的名称

如果您的计算机可以在合理的时间内处理 .md 文件,那么请务必使用“hexo -g”。

于 2015-07-10T04:47:31.977 回答
0

最容易改善导致组件的性能问题之一是降价股票渲染器。幸运的是,有很多替代方案——例如,试试 hexo-renderer-markdown-it

  1. 将您的 hexo 安装克隆到一个单独的目录中(或者只是将您的当前目录复制到另一个目录中)
  2. $ npm un hexo-renderer-marked --save
  3. npm i hexo-renderer-markdown-it --save
  4. 在两个目录中运行“hexo g”并比较性能
于 2015-10-08T23:34:53.357 回答