初次了解Backblaze B2是一位网友在ImgURL图床留言中提到的,目前ImgURL Pro已经支持该存储方式,点此查看ImgURL Pro介绍。
Backblaze成立于2007年,最开始的主要业务是帮助用户完整的备份电脑数据。不过目前已经扩展到保护业务并为开发人员和IT提供B2云存储,也就是接下来主要介绍的Backblaze B2.
关于价格
对比了好几家对象存储,发现Backblaze B2的价格确实便宜,仅为亚马逊AWS S3的1/4,有需要廉价存储方案的可以考虑Backblaze B2,下方是价格对比。
注册Backblaze
Backblaze B2为每位用户免费提供10GB存储,有需要的可前往https://www.backblaze.com/ 注册。
启用CloudFlare CDN
Backblaze B2的下行流量费用为0.01$/G,虽然已经足够便宜,本着能省则省的原则,我们可以按照官方博客的方法将B2接入CloudFlare CDN进行缓存,从而进一步节省流量开支。
首先需要在https://www.cloudflare.com/ 添加一个您自己的域名,并根据提示完成接入。
比如您在CloudFlare接入的域名为
b2-test.bmp.ovh
,需要在CloudFlare将域名使用CNAME记录解析到B2的域名:f002.backblazeb2.com
然后打开CloudFlare - Page Rules - Create Page Rule,按照下方创建一个页面规则。
重写规则为您的域名
+ /file/
+ b2 bucket name
+ /*
,接入CloudFlare的更多说明可以参考官方博客:Using Backblaze B2 with the Cloudflare CDN
设置Backblaze B2
虽然启用了CloudFlare CDN,但发现缓存永远不能命中(MISS),我们需要对添加一个缓存指令(默认是不缓存),打开存储桶设置,桶信息设置为{"cache-control":"max-age=43200"}
,其中43200
单位为秒(s),意思就是说43200秒内CF不会去从源站重新获取资源。
通过浏览器F12调试工具已经可以看到请求命中了CF缓存,如下截图。
总结
Backblaze B2服务器在美国,适合美国VPS搭配使用,不然速度可能较慢,Backblaze B2价格低廉,用来做存储和VPS数据备份都是不错的方案(官方提供了相关接口)。同时还可以购买ImgURL Pro将Backblaze B2用做图床。
此文部分内容参考了:Cache Images from BackBlaze B2
Backblaze B2 流出到 Cloudflare 的流量是免费的,也就是说就算 CF 回源 B2 也没有 $0.01/GB 的流出流量费,相当于免费无限流量。不过这并不能阻止坏蛋直接用 B2 的域名(而不是套了 CF 的域名)刷流量。