最后
由于细节内容实在太多了,为了不影响文章的观赏性,只截出了一部分知识点大致的介绍一下,每个小节点里面都有更细化的内容!
小编准备了一份Java进阶学习路线图(Xmind)以及来年金三银四必备的一份《Java面试必备指南》
-
缓解甚至消除了不同运营商之间互联的瓶颈造成的影响
-
减轻了各省的出口带宽压力
-
缓解了骨干网的压力
-
优化了网上热点内容的分布
二、CDN工作原理
传统访问过程
由上图可见,用户访问未使用CDN缓存网站的过程为:
-
用户输入访问的域名,操作系统向 LocalDns 查询域名的 ip 地址
-
LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期)
-
ROOT DNS将域名授权 dns记录回应给 LocalDns
-
LocalDns 得到域名的授权 dns 记录后,继续向域名授权 dns 查询域名的 ip 地址
-
域名授权 dns 查询域名记录后,回应给 LocalDns
-
LocalDns 将得到的域名ip地址,回应给 用户端
-
用户得到域名 ip 地址后,访问站点服务器
-
站点服务器应答请求,将内容返回给客户端
CDN 访问过程
通过上图,我们可以了解到,使用了CDN缓存后的网站的访问过程变为:
-
用户输入访问的域名,操作系统向 LocalDns 查询域名的ip地址.
-
LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期)
-
ROOT DNS将域名授权dns记录回应给 LocalDns
-
LocalDns得到域名的授权dns记录后,继续向域名授权dns查询域名的ip地址
-
域名授权dns 查询域名记录后(一般是CNAME),回应给 LocalDns
-
LocalDns 得到域名记录后,向智能调度DNS查询域名的ip地址
-
智能调度DNS 根据一定的算法和策略(比如静态拓扑,容量等),将最适合的CDN节点ip地址回应给 LocalDns
-
LocalDns 将得到的域名ip地址,回应给 用户端
-
用户得到域名ip地址后,访问站点服务器
-
CDN 节点服务器应答请求,将内容返回给客户端。(缓存服务器一方面在本地进行保存,以备以后使用,二方面把获取的数据返回给客户端,完成数据服务过程)
通过以上的分析我们可以得到,为了实现对普通用户透明(使用缓存后用户客户端无需进行任何设置)访问,需要使用 DNS(域名解析)来引导用户来访问 Cache 服务器,以实现透明的加速服务。由于用户访问网站的第一步就是域名解析,所以通过修改dns来引导用户访问是最简单有效的方式。
CDN网络的组成要素
对于普通的 Internet 用户,每个 CDN 节点就相当于一个放置在它周围的网站服务器。
通过对 DNS 的接管,用户的请求被透明地指向离他最近的节点,节点中 CDN 服务器会像网站的原始服务器一样,响应用户的请求。 由于它离用户更近,因而响应时间必然更快。
从上面图中虚线圈起来的那块,就是 CDN 层,这层是位于用户端和站点服务器之间。
智能调度 DNS(比如 f5 的 3DNS)
-
智能调度DNS是CDN服务中的关键系统.当用户访问加入CDN服务的网站时,域名解析请求将最终由 “智能调度DNS”负责处理。
-
它通过一组预先定义好的策略,将当时最接近用户的节点地址提供给用户,使用户可以得到快速的服务。
-
同时它需要与分布在各地的CDN节点保持通信,跟踪各节点的健康状态、容量等信息,确保将用户的请求分配到就近可用的节点上.
缓存功能服务
-
负载均衡设备(如lvs,F5的BIG/IP)
-
内容Cache服务器(如squid)
-
共享存储
三、名词解释
CNAME记录(CNAME record)
CNAME即别名( Canonical Name );可以用来把一个域名解析到另一个域名,当 DNS 系统在查询 CNAME 左面的名称的时候,都会转向 CNAME 右面的名称再进行查询,一直追踪到最后的 PTR 或 A 名称,成功查询后才会做出回应,否则失败。
例如,你有一台服务器上存放了很多资料,你使用docs.example.com去访问这些资源,但又希望通过documents.example.com也能访问到这些资源,那么你就可以在您的DNS解析服务商添加一条CNAME记录,将documents.example.com指向docs.example.com,添加该条CNAME记录后,所有访问documents.example.com的请求都会被转到docs.example.com,获得相同的内容。
面试题总结
其它面试题(springboot、mybatis、并发、java中高级面试总结等)
源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**