快捷菜单
常用功能一站直达
更多功能请点顶栏「快捷菜单」
one博客:简约、唯美、丝滑且强大。
one博客(基于rouxzhee,one二次开发的)开源出来排查结论:慢主要不是 Hugo 本身坏了,而是体量大 + 启动流程重复构建 + 侧边栏模板开销叠加。
render pages(你截图里的 ~24.8s)start.bat 启动做了两次全量构建(主要体感慢)启动流程里在跑 hugo server 之前,又执行了一次完整 hugo build(原注释说是给 Pagefind,但 FlexSearch 已在数据生成阶段完成)。
等于:预处理 + 第一次构建 + server 再构建 ≈ 等很久才能访问
--disableFastRender 拖慢开发热更新改一个文件会触发大范围重渲染,而不是只更新变更页。
--templateMetrics 显示:
| 模板 | 优化前 | 优化后 |
|---|---|---|
sidebar-node.html | 153,882 次 / ~34s | 2,670 次 / ~0.34s |
docs-meta.html | ~43s 累计 | 每篇文档元信息,难再大幅压缩 |
render-codeblock.html | ~9283 次代码高亮 | 内容里代码块多,属正常开销 |
根因:每篇文档用不同 cache key 渲染侧边栏,递归 partial 被重复执行十几万次;激活态其实已由 simple-sidebar.js 根据 data-path 在客户端处理。
侧边栏按分类缓存
sidebar-resolve-category.htmlcategorySlug 共享缓存,去掉服务端 is-active(交给 JS)启动脚本
hugo build--disableFastRender,开启快速热更新bin/windows/start-quick.bat(快速启动)Linux / Makefile 同步去掉 --disableFastRender
| 场景 | 命令 |
|---|---|
| 日常开发 | bin/windows/start.bat(现在应快很多) |
| 更快启动 | bin/windows/start-quick.bat |
| 仅看构建耗时 | bin/windows/hugo.exe --source=hugo-teek-site --contentDir=.content-vp-converted |
改主题/布局后首次构建仍要 ~30s(1631 页全量);改单篇文章后应明显更快。
render-codeblock)是第二大头,可考虑减少不必要的代码块或拆分构建docs-meta.html 每页 ~32ms,已用 partialCached,收益有限make build-fastest 跳过非必要步骤需要的话我可以帮你提交并推送这批性能优化改动。
日历 · 精选 · 友链 · 更多
如果内容对你有帮助,欢迎请我喝杯咖啡 ☕



One的公众号
爱折腾博客的小白