很多人都知道CDN是内容分发加速,所谓内容分发,就是将本来位于源站的内容分发到全国各地的节点,方便用户去就近访问所需的内容。随着移动互联网、云计算等一代代技术变革,CDN已经成为了缓解互联网网络拥塞、提升应用响应速率、改善用户体验的重要互联网基础设施。

前瞻产业研究院的数据表示,2019年超过50%的互联网流量将通过CDN进行加速,到2020年,全球CDN市场规模将增长到157.3亿美元。也就是说,越来越企业开始意识到使用CDN的必要性。尤其是2019年,我国正式进入到5G商用元年,大带宽、低时延、大连接的应用场景将迎来爆发,这对CDN节点覆盖和响应速度都有了更高的要求,这也会推动CDN边缘节点进一步发展。

CDN的“不可或缺”似乎已经成为共识,那么究竟这一共识是怎么产生的呢?假如没有CDN的存在,网络世界又会变成什么样?身为网络原住民的我们会面临什么困扰呢?

场景一:当你要网购

图片载入慢、视频加载中、交易卡住不动……没有网购的畅快体验,好像宝贝都不香了呢

场景二:当你看球赛

解说总比进球快那么几秒钟,欢呼卡不到点上的感觉真的很难受

场景三:当你要上网课

因为卡顿,好好的一节网课上出了鬼畜风格,被老师cue到时再也不用假装静止逃避答题,因为是真的卡住了

场景四:当你的公司要做个网站在线营业

相传当用户访问一个网站时,如果等待网页打开的时间超过8秒,会有超过30%的人放弃等待…… 可怕的8秒魔咒怎么破?花了很多心思让用户来到官网,却留不住他们怎么办?

以上只是列举,如果没有CDN,整个网络世界就会慢下来,拥塞、加载缓慢、卡顿、延时、掉帧、花屏……等等问题接踵而来,访问速度变慢,获取信息速度就会变慢,原本丰富的内容无法观看、令人心动的交互体验无法完成,你是不是会因此而放弃浏览呢?

其实身为重度网民的我们无时无刻不在享受着CDN带来的优质网络访问体验,刷短视频、抢火车票、玩游戏、看直播、下载手机APP、逛论坛博客……这背后的分发加速都是由CDN提供的。尤其是在今年开年的硬核“防疫”背景下,万物皆上云,云买菜、云看病、云上课、云办公、云逛景区、云买豪宅、云上开庭等等情况下,CDN更加成为十分抢手的一种战略资源储备,承载着整个互联网的流量,为数亿网友的宅家生活保驾护航。

那么,CDN的原理究竟是什么?

下面为大家介绍一下CDN的原理。最简单的CDN网络由一个DNS服务器和几台缓存服务器组成:
①当用户点击网站页面上的内容URL,经过本地DNS系统解析,DNS系统会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。
②CDN的DNS服务器将CDN的全局负载均衡设备IP地址返回用户。
③用户向CDN的全局负载均衡设备发起内容URL访问请求。
④CDN全局负载均衡设备根据用户IP地址,以及用户请求的内容URL,选择一台用户所属区域的区域负载均衡设备,告诉用户向这台设备发起请求。
⑤区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务,选择的依据包括:根据用户IP地址,判断哪一台服务器距用户最近;根据用户所请求的URL中携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。基于以上这些条件的综合分析之后,区域负载均衡设备会向全局负载均衡设备返回一台缓存服务器的IP地址。
⑥全局负载均衡设备把服务器的IP地址返回给用户。
⑦用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容,而区域均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉到本地。

为什么非CDN不可?

1. 为了提升用户访问体验
将静态内容,比如图片、视频、音频、JS文件、CSS文件、静态页面等内容缓存到CDN节点上,实现用户请求后的就近访问,降低传输链路延时。

2.为了实现跨运营商、跨地域的全网覆盖
互联不互通、区域ISP地域局限、出口带宽受限制等种种因素都造成了网站的区域性无法访问。CDN加速可以覆盖全球的线路,通过和运营商合作,部署IDC资源,在全国骨干节点商,合理部署CDN边缘分发存储节点,充分利用带宽资源,平衡源站流量。

3.为了保障你的网站安全
CDN的负载均衡和分布式存储技术,可以加强网站的可靠性,相当于无形中给你的源站添加了一把保护伞,将绝大部分的互联网攻击事件与源站隔离,避免源站遭到恶意攻击而带来的业务停摆或者资产损失。

4.为了异地备援
当某个服务器发生意外故障时,系统将会调用其他临近的健康服务器节点进行服务,进而提供接近100%的可靠性,这就让你的网站可以做到永不宕机。

5.为了节约成本投入
使用CDN加速可以实现网站的全国铺设,你根据不用考虑购买服务器与后续的托管运维,服务器之间镜像同步,也不用为了管理维护技术人员而烦恼,节省了人力、精力和财力。

6.为了让你更专注业务本身
CDN加速厂商一般都会提供一站式服务,业务不仅限于CDN,还有配套的云存储、大数据服务、视频云服务等,而且一般会提供7x24运维监控支持,保证网络随时畅通,你可以放心使用。并且将更多的精力投入到发展自身的核心业务之上。

阿里云CDN在全球拥有2800多个节点,可以最大程度保证资源覆盖以及业务稳定性,帮助用户们获得最佳的加速体验。5月20日,阿里云CDN将要举办一场政企安全加速解决方案线上发布会,届时会有产品、技术专家们来和大家一起聊聊关于CDN行业应用、安全体系、国密算法的那些事,点击预约报名:https://yq.aliyun.com/live/2748

CDN百科 | 假如没有CDN,网络世界会变成什么样?的更多相关文章

  1. CDN百科第三讲 | 如果用了云服务器,还需要做CDN加速吗?

    在全站上云的背景下,云计算已经不仅仅是大型互联网公司的独享概念,正在被更多的传统企业.中小企业甚至个人站长所采用.在众多云计算服务中,最常见两个产品就是云服务器和CDN,今天的CDN百科第三讲,就给大 ...

  2. CDN百科第四讲 | 如何优雅地在云上“摆摊”——做直播带货,你不得不关注的技术

    最近,国家政策开始鼓励“地摊经济”,一时间各家企业平台纷纷推出地摊扶持政策,地摊概念股顺势大涨,地摊生态及配套商品也开始走俏,甚至在网络上也涌现出各种“新摊主速成攻略”,万亿的烟火经济俨然已经走上风口 ...

  3. CDN百科 | 最近,你的APP崩了吗?

    过去几个月里,#xxx崩了#这个话题频繁出现在热搜榜上,让不少程序员小哥哥瑟瑟发抖. 从疫情宅家时期著名的视频APP“三连崩”,到全面复工开课后的在线教育平台与办公软件频繁宕机,再到报复性消费引发的点 ...

  4. 关于cdn原理(就是内容分发网络)

    cdn,我理解其本质就是为了解决距离远产生的速度问题,使用就近的服务. 从中国请求美国一台服务器上的图片.一般比较慢,因为距离这么远,网络传输是存在损耗的,距离越远,传输的时间就越长.一般会看到浏览器 ...

  5. 【CDN】- 什么是CDN

    高冷科普: CDN,Content Delivery Network缩写,即内容分发网络.通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量 ...

  6. 网络协议 16 - DNS 协议:网络世界的地址簿

    [前五篇]系列文章传送门: 网络协议 11 - Socket 编程(下):眼见为实耳听为虚 网络协议 12 - HTTP 协议:常用而不简单 网络协议 13 - HTTPS 协议:加密路上无尽头 网络 ...

  7. CDN技术之--流媒体CDN系统的组成

    流媒体业务是一种对实时性.连续性.时序性要求非常高的业务,无论从带宽消耗上还是质量保障上来说,对best-effort的IP网络都是一个不小的冲击 –高带宽要求–高QoS要求–组播.广播要求(目前IP ...

  8. 七牛云 融合CDN测试域名 -> 融合CDN加速域名

    七牛云 融合CDN测试域名 -> 融合CDN加速域名 本篇主要讲解 如何将七牛云融合CDN测试域名 切换到自定义的加速域名上去,为什么会写这篇是因为我收到了一封 [七牛云]测试域名回收通知的邮件 ...

  9. 什么是个CDN???CDN是干什么的??

    1.什么是CDN??? CDN的全称是Content Delivery Network,即内容分发网络.其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络& ...

随机推荐

  1. android 数据库是否该关闭

    关于android多线程数据读写请看博客: android 多线程数据库读写 常常纠结于获取了SQLiteDatabase每次操作完是否要关闭的问题,每次关闭又怕影响性能,这里记录下SQLiteOpe ...

  2. jenkins 流水线学习

    最佳实践: https://www.cnblogs.com/itech/p/5678643.html 一些样例 https://jenkins.io/doc/pipeline/examples/ gi ...

  3. 初试stm32嵌入式开发遇到的巨坑

    开发板使用的是st官方的stm32F207ZG nucleo,遇到的问题是在keil中报错: no target connected 到网上找答案,都是说gpio口的问题,让按着reset键改debu ...

  4. 你不知道的事---SringCloud的feign的继承特性

    前言 说起SpringChoud的feign大家用过的都说好.Feign是Netflix开发的声明式.模板化的HTTP客户端.对于我们微服务来说,微服务之间的api调用,使用feign来说是再方便不过 ...

  5. 迟早要知道的JS系列之常用数组方法

    常用数组方法 一.不会改变原始数组的方法: 即访问方法,下面的这些方法绝对不会改变调用它们的对象的值,只会返回一个新的数组或者返回一个其它的期望值. 1. concat() ** 语法:** Java ...

  6. 高版本Jenkins关闭跨站请求伪造保护(CSRF)

    前言 根据官网描述,Jenkins版本自2.204.6以来的重大变更有:删除禁用 CSRF 保护的功能. 从较旧版本的 Jenkins 升级的实例将启用 CSRF 保护和设置默认的发行者,如果之前被禁 ...

  7. CF808E Selling Souvenirs

    题目链接: http://codeforces.com/contest/808/problem/E 题目大意: Petya 有 n 个纪念品,他能带的最大的重量为 m,各个纪念品的重量为 wi,花费为 ...

  8. 51Nod - 1050

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1050 解题思路: It's so beautiful ! 循环 ...

  9. 从Student类和Teacher类多重派生Graduate类 代码参考

    #include <iostream> #include <cstring> using namespace std; class Person { private: char ...

  10. 08 . Python3高阶函数之迭代器、装饰器

    Python3高阶函数之迭代器.装饰器 列表生成式 推导式就是构建比较有规律的列表,生成器. 孩子,我现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],我要求你把列表里 ...