cdn+cos,1+1>2!

2020-10-29 11:13:47 浏览数 (1)

  • 首先了解下为什么要结合?
    • 成本优点
    • 访问控制
    • 访问速度
  • 接入实操
  • 借助云函数 SCF 实现自动刷新在 CDN 上指定的缓存文件

导语:

代码语言:javascript复制
cdn加速和云存储cos的结合,会让更多用户轻松上云,使用云变的更简单。方便静态文件的云上托管和访问的加速。
结合使用,会出现1 1>2的效果。

为什么要结合?

1、流量成本上(非金融区):

cos侧单价:

可以看到分地域单价不同,但是最低费用为0.5元/GB

cos外网下行流量单价cos外网下行流量单价

cdn侧流量单价 可以看到按梯度计费,最高0.21元/GB

cdn流量计费单价cdn流量计费单价

所以从流量的费用上来计算,最理想的状态(cdn缓存住所有数据,cos数据不进行更新),每GB可以节省0.29元。 当然,这只是极特殊情况;那么看下最坏的情况,cdn侧数据完全不缓存,通过cdn分发cos侧数据流量费用为:0.21(cdn访问流量) 0.15(cdn回源cos流量)=0.36元/GB,每GB也要节省0.14元。

2、访问控制上:

cos侧: 基本没有访问限制配置(目前只有防盗链,访问权限,1200QPS)对于个人小站或者访问量较低的人来使用,基本很难对恶意用户的访问管控。(ps:腾讯云可以再完善下)

cdn侧:

①防盗链配置:和cos侧同理不做描述 ,详见文档:https://cloud.tencent.com/document/product/228/41454

②IP黑白名单配置:对用户请求的源 IP 配置过滤策略,帮助您解决恶意 IP 盗刷、攻击等问题。 https://cloud.tencent.com/document/product/228/41431

③IP访问限频配置:对客户端 IP 在每一个节点每一秒钟访问次数进行限制,进行 CC 攻击的抵御 https://cloud.tencent.com/document/product/228/41432

④带宽封顶:当域名在一个统计周期(5分钟)内产生的带宽超过指定阈值时,会根据您的配置将所有访问返回给源站,或直接关闭 CDN 服务,所有访问均返回404。 https://cloud.tencent.com/document/product/228/7541

所以cdn cos结合后可以提高访问限制能力,大大避免不必要损失。

3、访问速度上:

直接上示例,测试地点北京,测试存储桶成都,cos默认域名:

cos默认域名访问情况cos默认域名访问情况

同台机器测试,cdn加速域名:

cdn加速域名情况cdn加速域名情况

可以看到此场景下的访问cos默认域名访问完成在1727ms;cdn域名访问(命中缓存)完成时间163ms。

所以访问速度有大大的提升。


接入实操

1、创建对应地域私有读写存储桶(安全性考虑)

创建存储桶创建存储桶

2、默认加速域名配置格式(自定义加速域名雷同):

3、cdn侧访问控制配置添加:

  • 防盗链配置:https://cloud.tencent.com/document/product/228/6292
  • IP黑白名单:暂未发现异常ip未添加(发现流量有异常可以根据cdn控制台-日志服务-下载对应时间访问日志过滤出异常IP信息,拉黑处理)
  • IP访问限频:https://cloud.tencent.com/document/product/228/6420(设置过低访问会报错514)
  • 带宽封顶:上面有提到,不做描述

这样对外分发存储在cos的信息时,使用加速域名可以做到最大化的访问限制和节省开支。

安利: 如有需要看下下这个文档:

使用 SCF 自动刷新被 CDN 缓存的 COS 资源 https://cloud.tencent.com/document/product/436/30434

借助云函数 SCF 实现自动刷新在 CDN 上的缓存文件,让其自动获取到更新后的资源。

0 人点赞