说明
用户直接访问OSS资源,访问速度会受到OSS的下行带宽以及Bucket地域的限制。如果通过CDN来访问OSS资源,带宽上限更高,并且可以将OSS的资源缓存至就近的CDN节点,通过CDN节点进行分发,访问速度更快,且费用更低。
比如,本站的图片资源全部在阿里云OSS,假设bucket在北京,那么,海南访问图片资源速度肯定比不如河北地区快,所以,使用CDN将OSS的资源缓存至大陆各个节点,海南访问时会调用最近节点的资源,此时,就起到了加速效果。
背景信息
传统网站架构下,动态资源和静态资源不分离,随着访问量的增长,性能会成为瓶颈,如下图所示:
如果采用动静分离的网站架构,就能够解决海量用户访问的性能瓶颈问题,如下图所示:
该架构的要点如下:
- 将动态资源如Web程序、数据库等存放在云服务器ECS上。
- 将静态资源如图片、音视频、静态脚本等存放在对象存储OSS上。
- 将OSS作为CDN的源站,通过CDN加速分发,使用户通过CDN节点就近获得文件。
该架构有以下优势:
- 降低了Web服务器负载:OSS的资源缓存至就近的CDN节点,通过CDN节点进行分发,缩短了网络传输距离,加快了用户的调用速度。
- 支持海量存储:OSS的存储空间弹性无限扩展,您无需考虑存储架构升级。
- 降低了存储费用和流量费用:使用该架构会产生OSS的存储费用、CDN的下行流量费用,以及极少量的回源流量费用。其中OSS的存储费用仅为ECS云盘费用的一半,而CDN流量的单价约为OSS外网流量单价的30%~40%。
操作步骤
首先,需要开通CDN和OSS服务
- bucket创建成功之后,须添加域名,先将域名CNAME指向OSS外网地址
- 绑定CDN加速域名,即刚刚绑定到OSS的域名,源站信息选择OSS,修改加速域名解析,CNAME至CDN地址
Tip:在OSS绑定域名的位置,可以一键开启CDN加速,快捷方便!