什么是CDN,CDN的作用是什么?

CDN

CDN英文全称Content Delivery Network,即为内容分发网络。它是建立并覆盖在承载网之上,将内容存储在分布式的服务器上,使⽤户可以从距离较近的服务器获取所需的内容,从⽽减少数据传输的时间和距离,提⾼内容的传输速度、减少延迟和提升⽤户体验。

CDN的应用

CDN应用广泛,支持多种行业、多种场景内容加速,例如:图片小文件、大文件下载、视音频点播、直播流媒体、全站加速、安全加速。

CDN的工作流程

  1. 当⽤户输⼊⼀个域名或点击⼀个链接时,⾸先会进⾏域名解析。如果网站启⽤了 CDN,DNS 解析会返回距离⽤户最近的 CDN 节点的 IP 地址,⽽不是原始源服务器的 IP 地址。
  2. ⽤户的请求会被路由到距离最近的 CDN 节点,并且CDN 节点可以根据服务器的负载和可⽤性,动态地将请求分发到最适合的服务器节点上。
  3. CDN 会⾸先检查是否已经缓存了该资源。如果有缓存,CDN 节点会直接返回缓存的资源,如果没有缓存所需资源,它会从源服务器(原始服务器)回源获取资源,并将资源缓存到节点中,以便以后的请求。
    在这里插入图片描述

例如:点击

在这里插入图片描述

假设通过CDN加速的域名为www.a.com,接入CDN网络,开始使用加速服务后,当终端用户(北京)发起HTTP请求时,处理流程如下:

  1. 当终端用户(北京)向www.a.com下的指定资源发起请求时,首先向LDNS(本地DNS)发起域名解析请求。
  2. LDNS检查缓存中是否有www.a.com的IP地址记录。如果有,则直接返回给终端用户;如果没有,则向授权DNS查询。
  3. 当授权DNS解析www.a.com时,返回域名CNAME www.a.tbcdn.com对应IP地址。
  4. 域名解析请求发送至阿里云DNS调度系统,并为请求分配最佳节点IP地址。
  5. LDNS获取DNS返回的解析IP地址。
  6. 用户获取解析IP地址。
  7. 用户向获取的IP地址发起对该资源的访问请求。
  8. 如果该IP地址对应的节点已缓存该资源,则会将数据直接返回给用户,例如,图中步骤7和8,请求结束。
  9. 如果该IP地址对应的节点未缓存该资源,则节点向源站发起对该资源的请求。获取资源后,结合用户自定义配置的缓存策略,将资源缓存至节点,例如,图中的北京节点,并返回给用户,请求结束。

CDN是如何加速的

  1. 就近访问:CDN 在全球范围内部署了多个服务器节点,当⽤户请求访问⼀个网站时,CDN 会选择距离⽤户最近的节点来提供内容。这减少了数据传输的距离和时间,从⽽降低了延迟。
  2. 内容缓存:CDN 节点会缓存静态资源,如图⽚、样式表、脚本等。当⽤户请求访问这些资源时,CDN 可以直接从缓存中返回,避免了从源服务器获取资源的延迟。
  3. 前置缓存:CDN 可以根据网站的配置,提前将热门的内容缓存在节点中,以备用户请求时快速响应。
  4. 智能负载均衡:CDN 会根据服务器的负载和可用性,动态地将请求分发到合适的服务器节点上,确保资源的快速获取。
  5. 压缩技术:CDN 使⽤压缩技术对内容进⾏压缩,减少传输数据的大小,从⽽加快内容的传输速度。
  6. 并行下载:由于 CDN ⽀持多路复⽤,⽤户可以在同⼀个连接上同时下载多个资源,从而提⾼并行下载的效率。

CDN主要运用场景:

  • 物理距离远,多次网络转发,延时高不稳定;
  • 所在运营商不同,需运营商之间转发绕行;
  • 网络带宽处理能力有限,海量请求时,响应速度与可用性降低。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值