过去几个月里,#xxx崩了#这个话题频繁出现在热搜榜上,让不少程序员小哥哥瑟瑟发抖。

从疫情宅家时期著名的视频APP“三连崩”,到全面复工开课后的在线教育平台与办公软件频繁宕机,再到报复性消费引发的点餐系统接连“爆炸”,程序员们轮番上阵,或紧急扩容或抢修Bug,全力以赴将应用复活。然而,伴随着越来越多的通过网上处理业务,这种平台瞬时崩溃的情况绝不是最后一次出现。

你的APP为什么而崩?

如果我们把服务器比喻成一个景区,由于该景区在五一期间免费迎客,游客蜂拥而至,景区没有预计到会有如此汹涌的客流,也没有做好相应的应对措施,最终导致景区人满为患,游客无法正常享受游玩、餐饮等服务,整个景区瘫痪了,景区外的游客也只能被拒之门外了。

对于线上的业务上来说,排除掉后端架构复杂度和基础设施层面的问题,很多情况下“崩了”都是由于活动推广期带来业务突发性增长,瞬时流量激增、服务器承载压力过大而导致的。究其原因,实际上是没有针对业务的情况和自身服务能力,提前做好容量规划和应急预案。当突如其来的流量降临,比如用户增长和流量攻击,无法做到弹性扩容和攻击防护,业务就很难平稳运行了。

如果有了CDN呢?

很多用户会好奇,APP崩了和CDN有没有直接关系。

实际上,如果有了CDN,就可以起到很好的分流作用。假设淘宝只有一台服务器A在运行,所有用户都从这台A服务器下载资源(html、js、css等),这些静态资源的访问请求会给A服务器带来巨大处理压力。但如果淘宝事先把这些静态资源调度分流到全国各个地方的网络节点上(服务器B、C、D…),用户访问的时候实际是从距离最近的服务器N下载资源的,如此一来服务器A的压力就有所减轻,也就降低了因瞬时访问过大这一因素而导致的系统崩溃的可能性。

再举个例子,在体育或者游戏赛事直播中,总决赛往往是最令人期待的,直播平台也因为要承担高并发访问,一旦带宽不足,用户的观看就会产生卡顿、延时、评论刷不出来、连麦不成功,甚至最后直播直接瘫痪,用户无法观看。CDN作为内容分发网络可以为直播分发提供流畅的播放下行链路,借助负载均衡系统将将主播端采集的音视频数据推送到接近用户的数千个边缘节点,当观众端发起请求,就可以就近取得资源,减少网络抖动风险,增加直播链路稳定性,减少直播崩溃的可能性。

所以,其实你的APP崩了可能并不是CDN的原因,但是用了CDN会帮助你规避掉一些“业务崩溃”的风险时刻。 这也是企业为什么在大型活动之前,通常都会选择节点与带宽储备充足、稳定可靠、运维性能强大的CDN平台来合作,扛住流量峰值的原因了。

阿里云CDN的稳定性和性能都是经过历年天猫双11和春晚等大型活动的充分生产压测的,可以确保客户能够平稳、顺畅地完成属于自己的“双11”。其中智能流量分析系统,可提前10分钟对全网流量进行预测,保障资源池的合力连通度,在应对突发的大流量的同时,实现节点间流量的快速负载均衡,整个过程分钟级生效,确保平台在突发带宽下能平稳度过流量洪峰。

【CDN百科】

这个专栏中,我们会不断科普CDN知识,解读CDN实践,分享CDN案例
如果你也关注CDN、使用CDN
请留言回复你最最最关心的话题

CDN百科 | 最近,你的APP崩了吗?的更多相关文章

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

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

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

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

  3. CDN百科 | 假如没有CDN,网络世界会变成什么样?

    很多人都知道CDN是内容分发加速,所谓内容分发,就是将本来位于源站的内容分发到全国各地的节点,方便用户去就近访问所需的内容.随着移动互联网.云计算等一代代技术变革,CDN已经成为了缓解互联网网络拥塞. ...

  4. 如何设计和实现一个web app

    web app简介 web app其实不算是什么新鲜的东西,相比于传统的web和传统的app,web app这种web和app相结合的产物有的优点如下: 1. 开发上web app更有便捷性,ios开 ...

  5. 【纯·技术干货】更 App 化的小程序开发

    2018 年 10 月13 日,由又拍云和知晓云联合主办的 Open Talk 丨2018 小程序开发者沙龙系列活动广州站拉开帷幕,糗事百科前端负责人宋航在沙龙上做了<更App化的小程序开发&g ...

  6. CDN技术介绍

    CDN技术介绍 一.CDN概述 1.1 CDN定义 CDN即Content Delivery Network (内容分发网络).CDN是建立在现有IP网络基础结构之上的一种增值网络.是在应用层部署的一 ...

  7. 百度全站 https FAQ:技术宅告诉你如何搜索更安全

    百度从 14 年开始对外开放了 https 的访问,并于 3 月初正式对全网用户进行了 https 跳转. 你也许会问,切换就切换呗,和我有啥关系?我平常用百度还不是照常顺顺当当的,没感觉到什么切换. ...

  8. 安卓网络编程学习(1)——java原生网络编程(1)

    写在前面 马上要进行第二轮冲刺,考虑到自己的APP在第一轮冲刺的效果不尽人意,有很多网络方面的小BUG,这里就系统学习一下网络编程,了解来龙去脉,以便更好的对项目进行优化处理. http协议 http ...

  9. 浅谈Hybrid技术的设计与实现第二弹

    前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...

随机推荐

  1. Rabbitmq 整合Spring,SpringBoot与Docker

    SpringBootLearning是对Springboot与其他框架学习与研究项目,是根据实际项目的形式对进行配置与处理,欢迎star与fork. [oschina 地址] http://git.o ...

  2. 2018-08-27 jq筛选选择器

    筛选选择器:为了辅助选择器更简便.快速的找到元素: 1.过滤 eq(n) -> 第n个元素(从零开始) $('h1').eq(2) // 第三个h1 first() -> 第一个元素 la ...

  3. Codeforces Round #643 (Div. 2)(C ~ E)

    C. Count Triangles 题目链接 : https://codeforces.com/contest/1355/problem/C 题目大意 : 给你 A , B , C , D 问有多少 ...

  4. 真香警告!扩展 swagger支持文档自动列举所有枚举值

    承接上篇文章 <一站式解决使用枚举的各种痛点> 文章最后提到:在使用 swagger 来编写接口文档时,需要告诉前端枚举类型有哪些取值,每次增加取值之后,不仅要改代码,还要找到对应的取值在 ...

  5. python学习(12)使用正则表达式

    1.正则表达式知识 符号 解释 示例 说明 . 匹配任意字符 b.t 可以匹配bat / but / b#t / b1t等 \w 匹配字母/数字/下划线 b\wt 可以匹配bat / b1t / b_ ...

  6. Spring 依赖注入(DI)简介

    依赖注入的英文表示为dependency injection,缩写为DI. Spring框架的核心功能之一就是通过依赖注入的方式来管理Bean之间的依赖关系. 当编写一个复杂的 Java 应用程序时, ...

  7. java第十二周课后作业0523

    1.编写一个程序,实现字符串大小写的转换并倒序输出.要求如下(1)使用for循环将字符串“ Hello world”从最后一个字符开始遍历(2)遍历的当前字符如果是大写字符,就使用 toLower C ...

  8. Pyqt5_QComboBox

    QComboBox 是一个集按钮和下拉选项于一体的控件,也称做下拉列表框 方法 addItem() 添加一个下拉选项 addItems() 从列表中添加下拉选项 Clear() 删除下拉选项集合中的所 ...

  9. Android常用五大布局

    一.说明 1.每个应用程序都默认包含一个主界面布局文件(.xml). 2.位于项目的app/src/main/res/layout目录. 3.宽度和高度的属性 match_parent:强制性的使使徒 ...

  10. wordpress中文章发布时间不显示?用get_the_date代替the_date

    今天发现,在主题中部分地方使用the_date函数来显示文章发布的时间时,竟然发生不显示时间的情况,再仔细看了一下这些文章,有些都是经过几次修改和保存的,可能是由于the_date只是显示文章第一次发 ...