点击上面的Java全栈技术,每天关注学习Java知识点。
1.什么是CDN?
CDN 的正式名称是内容分发网络。其基本思想是尽可能避免互联网上影响数据传输速度和稳定性的瓶颈和链路,使内容传输更快、更稳定。
CDN系统在整个网络中部署节点服务器,形成一个构建在现有互联网之上的智能虚拟网络层,控制网络流量,每个节点的连接和负载状态以及到用户的距离可以实时分析。综合信息,包括将用户请求重定向到距离用户最近的服务节点的响应时间。其目的是使您想要的内容就近可用,减少Internet 网络的拥塞,并提高用户访问网站的响应能力。
用户访问网站时的响应速度因地区而异。为了提高用户访问速度并优化现有互联网的信息流,需要在用户和服务器之间添加中间CDN。它是目前大型网站使用的流行应用解决方案,因为它可以让用户以最快的方式从最近的位置获取必要的信息,彻底解决网络拥塞并提高响应速度。
2. 传统的网络访问形式有:
从上图可以看出,用户访问没有CDN缓存的网站的进程为:
1 用户指定访问浏览器的域名。
2、浏览器调用域名解析函数库解析域名,获取域名对应的IP地址。
3、浏览器利用获取到的IP地址和域名服务主机发出数据访问请求。
4、浏览器根据域名主机返回的数据显示网页内容。
通过这四个步骤,浏览器完成了从用户处接收要访问的域名以及从域名服务主机检索数据的过程。 CDN 网络在您和服务器之间添加了一层缓存。为了了解如何将用户请求定向到缓存并从源服务器检索数据,让我们看一下主要访问DNS 的流程。 CDN 缓存的网站:
3.使用CDN访问表单
对于CDN客户来说,您不需要改变您的网站结构,只需更改您自己的DNS解析并将CNAME设置为指向您的CDN服务提供商即可。从上图来解释一下原理,使用CDN缓存后的网站访问流程是这样的:
当用户指定域名访问浏览器时,浏览器会调用域名解析库来解析该域名。由于CDN已经编排了域名解析过程,因此解析函数库会检索对应的CNAME记录。要获取真实的IP地址(由于您当前已经使用了CDN服务,所以CNAME就是CDN服务商的域名),浏览器再次解析获取到的CNAME域名,就必须获取真实的IP地址。此过程使用分析(例如全局负载平衡DNS)根据地理位置解析相应的IP 地址,以帮助用户到达附近的位置。 (CDN服务提供最近的机器。)这种分析涉及获取真实IP地址,然后向缓存服务器发送访问请求,传递浏览器提供的域名。缓存的仅供内部使用的DNS解析得到域名的真实IP地址,缓存服务器从真实IP地址中检索内容,然后存储在本地以备将来使用。一方面,将检索到的数据返回给客户端,完成数据服务过程,客户端显示从缓存服务器返回的数据,完成整个浏览数据请求过程。 4、CDN关键技术
1.缓存算法[Squid],2.分发函数,3.负载均衡[Nginx](4.基于DNS的[BIND])。
缓存算法决定命中率、源服务器负载和POP节点存储容量。
分销能力取决于IDC能力和IDC战略分销
负载平衡(智能调度)决定最佳路由、响应时间、可用性和服务质量。
基于DNS 的负载平衡是使用CNAME 在[集群上]实现的,其性能优于最佳节点服务。
缓存点包括客户端浏览器缓存和本地DNS服务器缓存
缓存内容包括DNS地址缓存、客户端请求内容缓存、动态内容缓存。
支持静态和动态加速(图片加速、带证书的https加速)、下载加速、流媒体加速、企业应用加速、移动应用加速等协议。
5. 谁需要CDN?
由于CDN的核心功能是提高网络访问速度,其用户包括ICP、ISP、大型企业、电商网站、政府网站等大流量网站。通过使用CDN技术,这些网站无需投资昂贵的服务器或设立分支站点。当您使用CDN时,CDN负责信息的发送,并保证信息的发送成功。另一方面,技术人员只需要维护网站内容,不必担心流量问题。这样,网站可以让用户获得更多的新业务、更快地访问互联网内容、以及更好的服务质量。
例如,对于访问量较大、访问内容更新周期较长的网站,如政府网站,用户经常会进行大量的查询。这种类型的网站更适合CDN。另外,您是否注意到,在所谓的宽带社区中,瓶颈在于社区的外部出口?因此,使用CDN绝对可以保证社区用户可以使用视频点播、在线教育等宽带应用。
6.CDN的缺点
虽然新模型对现有模型进行了改进,但它们也必须具有一定的局限性。这也适用于CDN。实时性差是CDN的致命缺陷。随着对CDN 的需求随着时间的推移以及将远程服务器上的Web 内容页面与副本服务器或缓存中的页面同步的能力的增加,此缺陷将得到纠正。
解决方案是当网络内容发生变化时,将新的网络内容直接从服务器端传输到缓存,或者在访问网络内容时,尽可能实时地将网络内容从数据源服务器复制到缓存服务器.将增加。
版权声明:本文由今日头条转载,如有侵犯您的版权,请联系本站编辑删除。