小白理解CDN
2022/2/5 23:15:29
本文主要是介绍小白理解CDN,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
什么是 CDN
CDN 工作原理
内容分发网络(Content Delivery Network,简称 CDN)是建立并覆盖在承载网之上,由分布在不同区域的边缘节点服务器群组成的分布式网络
最简单的 CDN
可以通过一个 DNS 服务器和多个缓存服务器组成。
例子讲解
假设通过 CDN 加速的域名为www.a.com,接入CDN网络,开始使 用加速服务后,当终端用户(北京)发起 HTTP 请求时,处理流程如下:
-
当终端用户(北京)向www.a.com下的指定资源发起请求时,首先向LDNS(本地DNS)发起域名解析请求。LDNS检查缓存中是否有www.a.com的IP地址记录。如果有,则直接返回给终端用户;如果没有,则向授权DNS查询。
-
当授权 DNS 解析www.a.com时,返回域名CNAME www.a.tbcdn.com对应IP地址。域名解析请求发送至阿里云DNS调度系统,并为请求分配最佳节点IP地址。
-
LDNS 获取 DNS 返回的解析 IP 地址。用户获取解析 IP 地址。用户向获取的 IP 地址发起对该资源的访问请求。
-
如果该 IP 地址对应的节点已缓存该资源,则会将数据直接返回给用户,例如,图中步骤 7 和 8,请求结束。如果该 IP 地址对应的节点未缓存该资源,则节点向源站发起对该资源的请求。获取资源后,结合用户自定义配置的缓存策略,将资源缓存至节点,例如,图中的北京节点,并返回给用户,请求结束。
从这个例子可以了解到:
(1)CDN 的加速资源是跟域名绑定的。
(2)通过域名访问资源,首先是通过 DNS 分查找离用户最近的 CDN 节点(边缘服务器)的 IP
(3)通过 IP 访问实际资源时,如果 CDN 上并没有缓存资源,则会到源站请求资源,并缓存到 CDN 节点上,这样,用户下一次访问时,该 CDN 节点就会有对应资源的缓存了。
这篇关于小白理解CDN的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享
- 2024-11-22ansible 的archive 参数是什么意思?-icode9专业技术文章分享
- 2024-11-22ansible 中怎么只用archive 排除某个目录?-icode9专业技术文章分享
- 2024-11-22exclude_path参数是什么作用?-icode9专业技术文章分享
- 2024-11-22微信开放平台第三方平台什么时候调用数据预拉取和数据周期性更新接口?-icode9专业技术文章分享
- 2024-11-22uniapp 实现聊天消息会话的列表功能怎么实现?-icode9专业技术文章分享
- 2024-11-22在Mac系统上将图片中的文字提取出来有哪些方法?-icode9专业技术文章分享
- 2024-11-22excel 表格中怎么固定一行显示不滚动?-icode9专业技术文章分享
- 2024-11-22怎么将 -rwxr-xr-x 修改为 drwxr-xr-x?-icode9专业技术文章分享
- 2024-11-22在Excel中怎么将小数向上取整到最接近的整数?-icode9专业技术文章分享