转:CDN(内容分发网络)是如何工作的?by Alex Xu
内容分发网络(CDN)是指地理上分布的服务器,也称为边缘服务器(Edge Servers),提供静态和动态内容的快速交付。 让我们来看看它是如何工作的。
假设住在纽约的鲍勃想访问一个部署在伦敦的电子商务网站 myshop.com 。 如果请求转到伦敦的服务器,响应会相当慢。 因此,我们在鲍勃居住地附近部署CDN服务器,内容将从附近的CDN加载。
下图说明了这个过程。
1. 鲍勃在浏览器中键入 myshop.com 。 浏览器在本地DNS缓存中查找该域名。
2. 如果该域名不存在于本地DNS缓存中,浏览器就会去找DNS解析器来解析该域名。 DNS解析器通常位于互联网服务提供商(ISP)中。
3. DNS解析器对域名进行递归解析(详见我以前的文章)。 最后,它要求权威域名服务器(Authoritative Name Server)解析该域名。
4. 如果我们不使用CDN,权威名称服务器返回myshop.com的IP地址。 但如果使用CDN,权威域名服务器有一个别名指向myshop.cdn.com(CDN服务器的域名)。
5. DNS解析器要求权威域名服务器解析myshop.cdn.com
6. 权威域名服务器返回 CDN 负载均衡器的域名 myshop.lb.com
7. DNS解析器要求CDN负载均衡器解析myshop.lb.com。 负载平衡器根据用户的IP地址、用户的ISP、请求的内容和服务器的负载,选择一个最佳的CDN边缘服务器。
8. CDN 负载平衡器返回 CDN 边缘服务器的 IP 地址,用于 myshop.lb.com。
9. 现在我们终于得到了要访问的实际IP地址。 DNS解析器将IP地址返回给浏览器。
10. 浏览器访问CDN边缘服务器(CDN edge server)以加载内容。 CDN服务器上缓存的内容有两种类型:静态内容和动态内容。 前者包含静态网页、图片、视频;后者包括边缘计算的结果。
11. 如果边缘CDN服务器的缓存不包含内容,它就会向上到区域CDN服务器。 如果仍然没有找到内容,它将向上到中央CDN服务器,甚至到原点--伦敦的网络服务器。
𝐀 𝐪𝐮𝐞𝐬𝐭𝐢𝐨𝐧 𝐟𝐨𝐫 𝐲𝐨𝐮。 如何防止CDN上缓存的视频被盗版?
🔗 twitter.com/alexxubyte/status/1496166227731181571
🧵http://t.cn/A6abQfgq
