Saber 酱的抱枕

Fly me to the moon

08/13
2025
软件

Cloudflare 缓存储备 Cache Reserve 的费用

省流:使用量在最低计量单位内的话,每月需要 4.88 美元。

之前本站的背景图片功能没有默认启用,只有很少的人会加载背景图片。但是 Cloudflare 的免费 CDN 的缓存时间不够久,尤其是这些很少被访问的图片(包括早期文章里的图片),可能在数个小时内就会被移出 CDN 缓存,下次访问就需要从源站获取。

所以我尝试启用了 Cloudflare 的缓存储备(Cache Reserve)功能。它是基于 R2 存储的上层缓存,处于源服务器和 CDN 之间,如果 CDN 里没有命中缓存,会在缓存储备里寻找,没有的话才会去源服务器加载。所以这里保存的文件应该是访问量比较少的冷门文件,有效期是 30 天,每次访问都会刷新有效期。

没想到我才用了 7 天就到了账单日。看来账单是固定每月 7 号结算,被我赶上了。

收费标准是这样的:

注意下方的 Note,即使使用量非常低,也会按照一个单位进行计费。

比如存储费用是 $0.015 / GB / 月,我的使用量不到 100 MB,也是按 1 GB 计算的。

两种操作次数都是按百万次计费的,但我的情况是不到 100 次和不到 10 万次:

即便如此也按百万次计费了,主要是 A 类操作很贵,一个单位需要 $4.5。

我的账单其实就是三个单位费用的综合,4.88 美元:

所以数据量太少的话,使用缓存储备功能很不划算。

现在我已经停用了缓存储备,并把背景图片改为默认启用,这样请求频率大大增加了,只用免费 CDN 就可以有很高的命中率了。


相比于收费的缓存储备,其实也可以考虑白嫖免费的 R2 存储,有 10 GB 空间,百万次操作内免费,无须出口流量,对于本文这样的情况完全够用了。

虽然 R2 的服务器节点没有 CDN 多,不过可以在 R2 存储桶设置中绑定自定义域名(如 img.yourdomain.com),并把域名通过 Cloudflare 托管,这样 R2 里的文件也可以走 CDN。

即便不走 CDN,R2 的请求耗时也远低于我的源服务器。要知道我的源服务器加载一张几百 KB 的图片,耗时基本上都会超过 1.5 秒。只是这种方法需要修改前端所使用的图片的域名。

Cloudflare 缓存储备 Cache Reserve 的费用