为什么这个网站是用 C 语言构建的?

主要观点:作者回顾了自己搭建个人网站的历程,经历了从使用 Django 到 Nuxt 再到现在选择 C 语言编写的 md4c 解析器的过程,总结了对理想网站的要求并阐述了各方案的优缺点。
关键信息

  • 2017 年开始在个人网站写东西,早期使用 Apache 服务器,后改用 Django 搭建网站,发现繁琐;
  • 接着使用 Nuxt 并结合 GitHub Pages,虽有改进但维护困难,因框架更新导致版本控制问题而放弃;
  • 现在要求新网站满足开始写文章像在空白文件打字一样简单、静态生成且快速、生成网站依赖少、能持续使用至少 10 年等;
  • 尝试使用 Pandoc 解析 markdown 文件,速度在文件增多后下降,且依赖过多;
  • 最终选择 md4c 解析器,仅 250 LOC 代码,能快速解析大量 markdown 文件且无依赖、跨平台。
    重要细节
  • 搭建第一个网站时在 Digital Ocean 服务器上使用 Django 和 Nginx,每月花费 5 美元;
  • 用 Pandoc 解析约 20 - 30 个 markdown 文件速度尚可,超过则变慢,且整个生态依赖多;
  • md4c 解析器仅一个头文件和一个源文件,易于嵌入 C 项目,作者的网站转换器脚本运行迅速。
  • Hugo 是流行的替代方案,速度较快且易于上手,但对作者来说框架过大且可能不断变化。
阅读 7
0 条评论