每月节省 30¥ 阿里云全站 CDN 流量费用。
https://wener.tech 为国内备案域名,https://wener.me 为未备案域名,两个站点提供相同内容,数据都为 github pages
因为一个 repo 只能有一个 CNAME ,所以使用了两个。
在国内备案域名最省事的方式是放到国内云平台解析,迁出可能导致备案撤销,因此 wener.tech 使用了阿里云全站 CDN 。
其中 charts.wener.tech 流量最大,因为加到一些 helm charts 的索引站里,且部署很多地方都用到了。 其中量最大的请求为 index.yaml , 单个文件不小,请求次数高,每个月的全站 CDN 基本都花费在了 charts.wener.tech 。
每个月为 charts.wener.tech 流量付费也不是办法,因此打算迁移。
之前
graph TD
charts.wener.tech --CNAME--> AliyunCDN
AliyunCDN --> GitHubPages
之后
graph TD
charts.wener.tech -- CNAME --> fb.wener.me
fb.wener.me --> ArgoTunnel --Kubernetes--> Nginx
Nginx --> GitHubPages
因为 wener.tech 是在国内,因此只能使用 CNAME 方式到 cloudflare ,cloudflare 支持为外部域名配置 ssl ,然后 fallback 到托管域名。
使用了 Nginx 作为反向代理缓存,尝试了 Varnish ,但发现还是 Nginx 最为简单暴力。
GitHub Pages 有时候在国内也不一定能访问,加了本地缓存是最为保险的。
Cloudflare 缓存命中问题
一开始缓存命中是很低的
因为 Cloudflare 基于 extension 缓存而不是 mime ,且默认不缓存 html yaml 这种,在通过 Page Rule 添加全站缓存后,缓存命中率一下子就上去了。
就这样每个月节省了一小笔阿里云全站 CDN 流量费用。
穿透到 Nginx 的流量
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.