← 笔记

为什么这个站是纯静态的

· 架构 / 性能

这个站每天的访客是个位数。在这个量级上,任何常驻服务都是负担:要打补丁、要盯内存、要担心证书过期。所以整站构建成纯静态文件,只有“确实需要服务端”的部分才交给边缘函数。

静态优先带来什么

  • 首屏不需要等任何后端:HTML 从最近的 CDN 节点直接返回。
  • 缓存策略可以做到极致:带 hash 的资源 immutable 一年,HTML 不缓存。
  • 迁移成本几乎为零:产物是 dist/ 目录,换任何一家静态托管都是上传即可。

什么时候才需要边缘函数

只有三类需求值得动服务端:

  1. 需要跨用户共享的状态,比如访客计数、留言。
  2. 需要隐藏密钥,比如调用第三方 API 时不能把 key 放在前端。
  3. 需要按请求改写响应,比如 A/B 分流、地区判断。

这个站目前只用到第 1 类:/api/visit 一个接口,读改写一次 KV。

判断标准很简单:如果这个功能删掉之后,页面还能正常看,那它就不该进首屏。

留给未来的口子

函数写成标准的 fetch handler,不绑定任何平台专有 API(KV 通过一层极薄的接口注入)。这样同一份逻辑既能跑在 Cloudflare Pages Functions 上,也能跑在任意一台装了 Node 的机器上——包括不备案方案里那台香港备用机。