CDN的使用场景和操作细节

更新日期: 2018-12-27阅读: 2.6k标签: cdn

随着互联网的发展,各种网络应用也雨后春笋般的发展,应用越做越大,访问路径越来越长,用户的访问质量受到严重的影响,特别是用户和网站之间的链路被突发的大流量数据拥堵、异地访问急需加速,减少网络费用等因素,对于这些急需解决的问题,于是就有了内容发布网络(Content Delivery Network,简称CDN)。
CDN是指一种通过互联网互相连接的电脑网络系统,利用最靠近用户的服务器,更快、更可靠地将音乐、图片、视频、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。

CDN总承载量可以比单一骨干最大的带宽还要大。这使得内容分发网络可以承载的用户数量比起传统单一服务器多。也就是说,若把有100Gbps处理能力的服务器放在只有10Gbps带宽的数据中心,则亦只能发挥出10Gbps的承载量。但如果放到十个有10Gbps的地点,整个系统的承载量就可以到10*10Gbps。同时,将服务器放到不同地点,可以减少互连的流量,进而降低带宽成本。


CDN访问路径

  1. 首先访问本地的DNS,如果没有命中,继续递归或者迭代查找,直到命中拿到对应的IP地址。
  2. 拿到对应的IP地址之后服务器端发送请求到目的地址。注意这里返回的不直接是CDN服务器的IP地址,而是全局负载均衡系统的IP地址
  3. 全局负载均衡系统会根据客户端的 IP地址和请求的url和相应的区域负载均衡系统通信
  4. 区域负载均衡系统拿着这两个东西获取距离客户端最近且有相应资源的CDN缓存服务器的地址,返回给全局负载均衡系统
  5. 全局负载均衡系统返回确定的CDN缓存服务器的地址给客户端。
  6. 客户端请求缓存服务器上的文件

其中有一个比较重要的点,在过程1里:这个过程中,有一个CNAME的过程,我们访问CDN资源的地址一般是a.cloud.com或者类似的地址,是一个公司的访问CDN的专用地址。但是一般用的CDN的服务却是第三方的,即其实资源在他们的地址上比如tencent.cdn.com。这时候就需要在CDN查询的时候,需要把我们访问a.cloud.com的地址映射到tencent.cdn.com的地址上,然后拿着映射后的地址再去走一遍DNS解析,成功之后才获取到第三方提供的全局负载均衡系统的IP。再继续走后面的流程。


CDN的优势

我们使用CDN的两个重要的原因就是加速网站访问、减少宽带成本,其次,CDN还有很多作用:

1、为了实现跨运营商、跨地域的全网覆盖
互联不互通、区域ISP地域局限、出口带宽受限制等种种因素都造成了网站的区域性无法访问。CDN加速可以覆盖全球的线路,通过和运营商合作,部署IDC资源,在全国骨干节点商,合理部署CDN边缘分发存储节点,充分利用带宽资源,平衡源站流量。阿里云在国内有500+节点,海外300+节点,覆盖主流国家和地区不是问题,可以确保CDN服务的稳定和快速。

2、为了保障你的网站安全
CDN的负载均衡和分布式存储技术,可以加强网站的可靠性,相当无无形中给你的网站添加了一把保护伞,应对绝大部分的互联网攻击事件。防攻击系统也能避免网站遭到恶意攻击。

3、为了异地备援
当某个服务器发生意外故障时,系统将会调用其他临近的健康服务器节点进行服务,进而提供接近100%的可靠性,这就让你的网站可以做到永不宕机。

4、为了节约成本投入
使用CDN加速可以实现网站的全国铺设,你根据不用考虑购买服务器与后续的托管运维,服务器之间镜像同步,也不用为了管理维护技术人员而烦恼,节省了人力、精力和财力。

5、为了让你更专注业务本身
CDN加速厂商一般都会提供一站式服务,业务不仅限于CDN,还有配套的云存储、大数据服务、视频云服务等,而且一般会提供7x24运维监控支持,保证网络随时畅通,你可以放心使用。并且将更多的精力投入到发展自身的核心业务之上。


CDN使用场景

CDN是将源站内容分发至最接近用户的节点,使用户可就近取得所需内容,提高用户访问的响应速度和成功率。解决因分布、带宽、服务器性能带来的访问延迟问题,适用于站点加速、点播、直播等场景。今天为大家分享几个CDN的典型适用场景。

1、网站站点/应用加速
站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器ECS,静态资源如各类型图片、htmlcss、js文件等,建议结合 对象存储OSS 存储海量静态资源,可以有效加速内容加载速度,轻松搞定网站图片、短视频等内容分发

2、视音频点播/大文件下载分发加速
支持各类文件的下载、分发,支持在线点播加速业务,如mp4、flv视频文件或者平均单个文件大小在20M以上,主要的业务场景是视音频点播、大文件下载(如安装包下载)等,建议搭配对象存储OSS使用,可提升回源速度,节约近2/3回源带宽成本。

3、视频直播加速
阿里云一站式 视频直播服务 服务已正式上线发布!基于领先的内容接入与分发网络和大规模分布式实时转码技术打造的音视频直播平台,提供便捷接入、高清流畅、低延迟、高并发的音视频直播服务。支持多直播场景,全景数据统计,丰富角度分析;直播功能丰富,录制回放、实时封面、实时转码、连麦混流。

4、移动应用加速
移动APP更新文件(apk文件)分发,移动APP内图片、页面、短视频、UGC等内容的优化加速分发。提供httpDNS服务,避免DNS劫持并获得实时精确的DNS解析结果,有效缩短用户访问时间,提升用户体验。


CDN缓存策略

这对不同文件类型合理配置缓存策略能有效的增加CDN回源效率,大幅缩减宽带成本

1、配制合理的CDN缓存规则
说明:让当地或就近的 CDN 节点上的缓存内容,直接提供给用户访问。多个客户访问相同资源也无需回源站获取内容,以此减少回源带宽。
优点:缓存住的内容可直接由 CDN 提供资源的访问。
缺点:根据 CDN 缓存算法 "最近最少使用" 的原则,将最近访问内容频率最低的会被清理出 CDN 缓冲中,导致冷资源还会重新回源站获取。
例如: jpg|bmp|gif 图片类型缓存 7 天,mp4|flv|ts 视频类型缓存 30 天
需要注意:当CDN主动更新文件时可能会造成服务器压力上升,因为厂商的服务器会有很多,同时拉取更新资源时,请求量会很大。如果恰好处于业务高峰期需要和CDN厂家协商更改拉取时间。

2、去问号回源
说明:只缓存 URL 中的问号 ? 前路径中的地址资源,而不再缓存整条 URL 地址资源。
优点:只缓存住主要的资源内容,忽略掉问号后的经常变化的参数,有利于提高缓存命中率,减少回源带宽。
缺点:问号后如果有不同的内容版本号来区分资源,去问号缓存可能会影响实际访问效果,从而导致访问到旧资源。
例如: http://www.youku.com/test.mp4... , 配制去问号缓存 http://www.youku.com/test.mp4 做到只缓存这个URL地址资源。

3、开启 CDN 父层
说明:CDN 父层是指相对于边缘节点的上层再加了一个共享存储池,用来将多个 CDN 边缘节点的请求汇聚到父层,由父层再回源站获取资源。
优点:由父层统一回源站,可以起到收敛多个 CDN 边缘节点的请求。做到合并请求,减少回源带宽。
缺点:父层的部署地区并不是离客户最近的机房线路,由父层回源链路过长可能会被线路抖动产生回源失败。父层故障可能会导致多个 CDN 边缘节点无法获取到回源信息,影响面也较大。

4、开启 CDN 分段(分片)回源(缓存)
说明:CDN 分片回源是指将一份文件拆分成若干个小文件回源。
优点:通过识别不同类型的文件大小,来调整分片的大小。将客户第一次请求,由分片服务自动将资源的请求拆分成若干个分片,最终将分片缓存在边缘或父层中。
缺点:分片服务在第一次无论客户请求过程中是否断开,都会将请求进行分片回源。产生较多的请求次数,增加源站的HTTP请求连接数。
例如:以4M为分片单位,仅对点播和下载文件启用分片功能。

5、多个加速域名共享CDN缓存
说明:多个加速域名使用同一个源站,多个加速域名默认都会回源获取资源。
优点:配制了共享CDN缓存策略,多个加速域名只会回源一次,减少回源带宽。
缺点:多个加速域名的HOST会被合并成一个主要回源域名的HOST,导致记录回源域名不够清晰。

6、HTTP 和 HTTPS 共享CDN缓存
说明:HTTP 和 HTTPS 的 URL,默认是分别回源获取对应的资源。
优点:配制 HTTP 和 HTTPS 共享缓存策略,可以减少回源次数及带宽。
缺点: HTTP 的回源获取错误文件导致 HTTPS 响应错误

7、限制回源带宽。
说明:针对源站带宽有一定的限额,如果达到带宽上限会引起无法响应和请求到源站任何资源。
优点:限制回源带宽设置阀值,可以减少回源量突增导致无法访问的异常产生
缺点:会导致回源带宽突增后,导致超过回源带宽的请求失败

8、用第三方云存储(或内容注入)
说明:将源站迁移至第三方云存储,或CDN缓存节点作为临时存储站。
优点:一次性或者临时性将源站资源上传和同步到第三方存储机构,以减少回源带宽。
缺点:使用第三方云存储会产生使用成本,使用CDN缓存注入节点,将会占用上传带宽。

9、CDN 预取(预热)
说明:将资源提前一次性推送到CDN的边缘或者父层缓存节点。
优点:只占用一次上传带宽,而推送到CDN边缘或父层的内容可直接被用户访问。
缺点:需要提前获得推送资源,并且会占用上传带宽,业务繁忙时预热会导致上传带宽紧张。


欢迎订阅「K叔区块链」 - 专注于区块链技术学习
来自:http://www.jouypub.com/2018/b6846abf03ea43abb50078acad94173c/


链接: https://www.fly63.com/article/detial/1705

各个版本的jquery引用地址总结,jquery cdn公共库地址总汇

jquery作为前端常使用的插件之一,一般我们不使用下载到本地引用,直接通过CDN 公共库来加载,这篇文章就总结各个版本的jquery引用地址。

CDN与DNS知识汇总_CDN/DNS是什么?有什么好处?

在性能优化的时候,比较常见的一个建议是,把资源部署在CDN上,那么问题来了,CDN是什么?这样做有什么好处?讲完DNS,现在可以开始讲CDN了,CDN的全称是Content Delivery Network,即内容分发网络

vue.js的cdn引用地址有哪些?

vue 是一套用于构建用户界面的渐进式框架。我们使用采用cdn的方式来引入vue,可以缓解我们服务器的压力,原理是将我们的压力分给其他服务器点。

前端工程之CDN部署_前端为什么非要动静分离?说一下CDN托管的意义

大型Web应用对速度的追求并没有止步于仅仅利用浏览器缓存,因为浏览器缓存始终只是为了提升二次访问的速度,对于首次访问的加速,我们需要从网络层面进行优化,最常见的手段就是CDN(Content Delivery Network,内容分发网络)加速

什么是CDN缓存?CDN的入门了解

CDN即内容分发网络,是指一种通过互联网互相连接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、视频、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。

Vue项目构建持续集成阿里云CDN

CDN加速是Web应用性能优化和用户体验提升的至关重要的一环,当一个项目构建部署时,就需要考虑到如何高效的去完成相关资源的CDN部署。以一个基于 vue-cli3 构建的项目实例,来简单讲解如何配合Teamcity

网站防护选用高防CDN的优点

网站防护选用高防CDN有下列好多个优点:合理防御力DDoS、CC进攻,ms级時间没有响应,智能导航相对路径派发,高品质髙速互联网配搭SSD储存更顺畅。私有高防连接点

CDN(Content Delivery Network)原理

分发服务系统,其基本的工作单元就是各个cache服务器。负责直接响应用户请求,将内容快速分发到用户;同时还负责内容更新,保证和源站内容同步。根据内容类型和服务种类的不同

前端CDN库总汇

CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定

提高网页响应速度:优化你的 CDN 性能

CDN 服务本身并不具备域名解析功能,而是依托于 DNS 智能解析功能,由 DNS 根据用户所在地、所用线路进行智能分配最合适的 CDN 服务节点,然后把缓存在该服务节点的静态缓存内容返回给用户。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!