CDN解决了网络资源的哪些问题
发布时间:2023-12-28 15:02:24 所属栏目:安全 来源:DaWei
导读: 在这篇文章中我们来了解一下“CDN解决了网络资源的哪些问题?”,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解,内容详细,易于理解,希望大家阅读完这篇能有收获
在这篇文章中我们来了解一下“CDN解决了网络资源的哪些问题?”,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧! 最近在了解边缘计算,发现我们经常听说的CDN也是边缘计算里的一部分。那么说到CDN,好像只知道它中文叫做内容分发网络。 CDN概念 CDN全称叫做“Content Delivery Network”,中文叫内容分发网络。 实际上CDN这个概念是在1996年由美国麻省理工学院的一个研究小组为改善互联网的服务质量而提出的。那么它到底是怎么改善互联网服务质量的呢? 原理分析 我们知道,当我们使用域名访问某一个网站时,实际上就是将请求包(以Http请求为例)通过网络传输给某台服务器,比如访问“www.baidu.com”时: 首先解析出该域名所对应的IP地址(DNS域名解析) 然后将Http请求包通过网络路由到IP地址所对应的服务器 我们通常说“服务器的IP地址”,这其实不太准确,IP地址是和网卡绑定的,一个服务器可以有多个网卡,也就是可能有多个IP地址。 我们先来看第一步:域名解析 域名解析 解析域名分为两种: 将一个域名解析为一个IP地址 将一个域名解析为另外一个域名 其实解析思路不难,我们在域名服务商购买了一个域名之后,需要去映射一个IP地址,可以用Map来表示这个关系:域名:IP}。 同时我们也可以给某个域名取一个别名,比如“www.baidu.com”取一个别名“test.baidu.com”,这种关系也可以用Map来表示:域名:别名}。这里的别名专业一点叫做CNAME,相信大家对这个词有点眼熟,它就是这个意思。 而域名解析,实际上就是解析出指定域名所对应的IP地址,或者该域名的一个CNAME。 而域名解析是由DNS系统来负责的,DNS服务接受外部请求,从请求里提取域名, 如果这个域名对应的是IP地址,则返回这个IP地址, 如果这个域名对应的是CNAME,则继续查找CNAME域名的IP地址,然后将该地址返回给请求发送者。 请求发送者拿到IP地址之后,完成真正的请求调用。 特别注意:在有CNAME的情况下,我们可以发现,CNAME实际上在域名解析的过程中承担了中间人(或者说代理)的角色,这是CDN实现的关键。 CDN原理 首先CDN是为了改善互联网的服务质量的。通俗一点说其实就是提高访问速度。 假设百度网站现在只有一台服务器,现在有一个人在上海访问百度,如果该服务器也在上海,那么通常来说访问比较快,如果该服务器在拉萨,那么相对而言访问就比较慢了。那么这个问题的根本原因是网络传输是依赖于网线的,网线越长,那么时间肯定就越久。 思路很简单,但实现还是比较麻烦的,服务器上的资源分为两种:静态资源与动态资源。 静态资源:这种资源通常是很少变动的,比如图片,视频,css,javascript等等 动态资源:这种资源不同用户不同时刻访问通常是不一样的,比如ftl,jsp等等。 那么如果百度要在全国各地都部署服务器,如果说每个服务器上都有相同的动态资源,那么可能还需要配置相应的数据库,因为动态资源所记录的信息通常会存储在数据库中,那么这就涉及到了数据同步等等问题,这会导致成本很高,这种做法专业一点其实就是集群,而目前来说集群架构最多是三地五中心,不是说全国多地集群不可能,主要是成本太高。 现在如果要比较CDN系统,我们可以考虑两点: CDN系统中存储静态资源服务器的性能以及网速怎么样。 CDN系统中全国甚至全球范围内服务器节点的数量以及部署情况。 第一点很好理解,第二点大家应该也能理解了,如果静态资源的服务器节点很多,能够让每个用户在访问这些静态资源时都不用“跑很远的路程”才能获取到,那么自然这是CDN系统的优点。 有公司看到了这种需求,所以现在其实有很多CDN供应商,比如阿里,腾讯等等都有自己的CDN服务。只要你自己的系统接入了这些大厂所提供的CDN服务,你把自己的静态资源传给CDN服务,那么这些静态资源将自动地分布到全世界各地去。 (编辑:大连站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐