本篇内容介绍了“如何使用 cdn 实现应用的缓存和加速”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联建站主要从事网站制作、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务固安,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
1. CDN 简介
CDN 的全称是 Content Delivery Network,即内容分发网络。
CDN 是构建在网络之上的内容分发网络。
CDN 使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
分析 img.alibaba.com 域名
执行 dig 命令,输出如下
假如没有安装,执行一下命令安装:
yum install bind-utils
2. CDN 主要特点
本地 Cache 加速:提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,并大大提高以上性质站点的稳定性。
镜像服务:消除了不同运营商之间互联的瓶颈造成的影响,实现了跨运营商的网络加速,保证不同网络中的用户都能得到良好的访问质量。
远程加速:远程访问用户根据 CDN 负载均衡技术智能自动选择 Cache 服务器,选择最快的 Cache 服务器,加快远程访问的速度。
带宽优化:自动生成服务器的远程 Mirror(镜像)Cache 服务器,远程用户访问时从 Cache 服务器上读取数据,减少远程访问的带宽、分担网络流量、减轻原站点 WEB 服务器负载等功能。
集群抗攻击:广泛分布的 CDN 节点加上节点之间的智能冗余机制,可以有效地预防黑客入侵以及降低各种 D.D.o.S 攻击对网站的影响,同时保证较好的服务质量。
3. CDN 服务模式
内容分发服务器(CDN)是一个经策略性部署的整体系统。包含 3 个要件。
分发服务系统:最基本的工作单元就是 Cache 设备,Cache(边缘 Cache)负责直接响应最终用户的访问请求,把缓存在本地的内容快速地提供给用户。同时 Cache 还负责与源站点进行内容同步,把更新的内容以及本地没有的内容从源站点获取并保存在本地。
负载均衡系统:主要功能是负责对所有发起服务请求的用户进行访问调度,确定提供给用户的最终实际访问地址。两级调度体系分为全局负载均衡(GSLB)和本地负载均衡(SLB)。GSLB 主要根据用户就近性原则,通过对每个服务节点进行“最优”判断,确定向用户提供服务的 Cache 的物理位置。SLB 主要负责节点内部的设备负载均衡。
运营管理系统:分为运营管理和网络管理子系统,负责处理业务层面的与外界系统交互所必须的收集、整理、交付工作,包含客户管理、产品管理、计费管理、统计分析等功能。
4. CDN 工作流程
常规 WEB 请求处理流程
用户在自己的浏览器中输入要访问的网站域名。
浏览器向本地 DNS(域名解析服务器)服务器请求对该域名的解析。
本地 DNS 服务器中如果缓存有这个域名的解析结果,则直接响应用户的解析请求。
本地 DNS 服务器中如果没有关于这个域名的解析结果的缓存,则以递归方式向整个 DNS 系统请求解析,获得应答后将结果反馈给浏览器。
浏览器得到域名解析结果,就是该域名相应的服务设备的 IP 地址。
浏览器向服务器请求内容。
服务器将用户请求内容传送给浏览器。
引入 CDN 后 Web 请求处理流程
当用户点击网站页面的内容 URL,经过本地 DNS 系统解析,DNS 系统会最终将域名的解析权交给 CNAME 指向的 CDN 专用 DNS 服务器。
CDN 的 DNS 服务器将 CDN 的全局负载均衡设备 IP 地址返回给用户。
用户向 CDN 的全局负载均衡设备发起内容 URL 访问请求。
CDN 全局负载均衡设备根据用户 IP 地址,及用户请求的内容 URL,选择一台用户所属区域负载均衡设备,让用户向这台设备发起请求。
区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务。
用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。
如果这台缓存服务器上并没有用户想要的内容,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的原服务器将内容拉到本地。
5. CDN 关键技术
缓存算法
缓存代理软件:Squid
缓存算法决定命中率、源服务器压力、FTP 节点存储能力。
分发能力
分发能力取决于 IDC 能力和 IDC 策略性分布。
负载均衡
负载均衡软件:Nginx
负载均衡(智能调度)决定最佳路由、响应时间、可用性、服务质量。
基于 DNS
DNS 服务器软件:BIND
基于 DNS 的负载均衡以 CNAME 实现域名中转,智取最优节点服务。
缓存点有客户端浏览器缓存、本地 DNS 服务器缓存。
缓存内容有 DNS 地址缓存、客户请求内容缓存、动态内容缓存。
支持协议
支持协议如静动态加速(图片加速、http 带证书加速)、下载加速、流媒体加速、企业应用加速、手机应用加速。
“如何使用 CDN 实现应用的缓存和加速”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
分享名称:如何使用CDN实现应用的缓存和加速
文章网址:http://lswzjz.com/article/jsgheg.html