文档章节

Serverless架构用这5大优势,挽救了后来7亿用户的Instagram

数人云
 数人云
发布于 2017/07/06 14:18
字数 1609
阅读 10
收藏 0

Markdown

数人云之前分享的文章:《关于Serverless架构及平台选择,你知道多少?》详细地讲述了发展历史和公有云的Serverless服务平台,今天小数再讲讲它的5大优势,在如缩短交付周期等功能上与DevOps&SRE不谋而合。

图片社交巨头Instagram面对流量爆增,通过Serverless完成自救。果然创业艰辛,而这也恰恰证明了Serveless架构逐渐成为主流技术是有道理的。

Instagram&Serverless

Serverless架构在IT行业蓄势待发,并非没有道理。尽管这是一个相对较新的技术,但已引起了广泛的关注,许多新技术专家指出,Serverless架构具有缩短交付时间,改善操作和安全实践等功能,以及创造出一种革命性的付费模式——按资源消耗付费。

2010年Instagram发布时,差点因其准备不足而无法成为下一个白手起家的社交媒体公司。

在短短的6个小时之内,暴增的流量超过了其在洛杉矶服务器所能承受的负载。

联合创始人Mike Krieger和Kevin Systrom被迫将本地服务器紧急迁移到Amazon的E2C云服务上,他们称之为心脏手术。也正是这个举措挽救了Instagram。

经过六年的快速发展,Serverless架构取得了巨大的成果,不止简单的将现有服务器迁移到云端帮助扩展和操作,还采用弹性计算这种新的方法来简化开发过程。为Uber、口袋妖怪GO、部落冲突、Airbnb和其他具有大量基数的应用及实时数据提供了必要的保障。

在苹果或者谷歌的游戏应用商店里,有超过400万个应想供用户选择,开发人员为了寻求竞争优势,逐步转向Serverless架构。游戏应用的开发成本很容易就到达6位数,但90%的付费应用每天收入不到1250美元。通过降低成本和内部复杂性,Serverless架构帮助开发者应对激烈竞争的市场,以及提供良好的用户体验。

例如,利用全球网络数据流,无需繁琐构建架构和维护服务器,为什么不这样做呢?

Serverless架构的秘密 对于开发者来说,Serverless架构可以将其服务器端应用程序分解成多个执行不同任务的函数,整个应用分为几个独立、松散耦合的组件,这些组件可以在任何规模上运行。

Serverless需要这些功能运行在并行的容器上,分别监控和缩放。这种新的体系结构提供了几个关键点,并解决了其他软件挑战性和伸缩性问题。

举个例子:实时过滤聊天评论。许多聊天应用的业务需求大都是每条信息必须经过过滤、解析或在交付给收件人之前进行管理。

通常的方法是每条消息首先会发送到服务器,解析并重新发布到聊天室,对于少量的同步用户可能有用,但若有100万用户的话,简单的聊天过滤问题就会变成分布式计算的噩梦。

同样的问题对于Serverless架构来说简直是无痛的,开发人员写一个过滤聊天信息的函数。Serverless将函数封装到容器中,可以在任意数量的服务器上监控、备份和分发。开发人员将所有聊天信息路由到程序,只需运行更多容器即可确保逻辑能在任何规模上运行。

Serverless架构的优势

无论是正在开发一个聊天应用,还是想成为下一个口袋妖怪GO,Serverless架构都是最好的选择。

〓 缩短交付时间

Serverless架构允许开发人员在极短时间内(数天、数小时)交付新的应用程序,而不是像以前一样需要几个星期或数月。在新的应用程序中,依赖于第三方API提供服务的例子很多,如认证(OAuth)、社交(Twitter)、地图(Mapbox)、人工智能(IBM的Watson)等等。

〓 增强可伸缩性

所有人都希望自己开发的应用成为下一个Facebook,但若梦想成真,它能够负载吗?当成功降临却没有准备好就更加令人遗憾。Serverless架构的体系不用有上述担忧,如某个在线培训APP,6个月内获取了4万用户,但一个服务器都没有用。

〓 降低成本

Serverless架构模式可以降低计算能力和人力资源方面的成本,如果不需要服务器,就不用花费时间重新造轮子、风险监测、图像处理、以及基础设施管理,操作成本更会直线下降。

〓 改善用户体验

用户不太关心基础设施,更注重的是功能和用户体验。Serverless架构允许团队将资源集中在用户体验上。例如:气象公司利用Serverless架构给种植者提供了丰富的界面去操作农场设备,并会提示相关操作改进。

〓 减少延迟及优化地理位置信息

应用规模能力取决于三个方面:用户数量、所在位置及网络延迟。现在应用要面向全球受众,因而产生延迟降低体验。在Serverless架构下,供应商在每个用户附近都有节点,大幅度降低了延迟,因此对每个用户都适用。如:Gett在全球范围内提供按需服务,因此它选择了Serverless架构来降低延迟,即时消息连接司机和乘客,以及流媒体的地理位置更新。

结语

从照片分享应用到农业数据仪表盘再到连接引擎,Serverless架构可以满足开发者的广泛需求。

随着数据负载的持续增长,期待Serverless架构通过降低成本、延迟、交付时间和复杂性,成为应用开发领域的主要技术。

关于Serverless架构,你还知道哪些其他的优势吗?

© 著作权归作者所有

共有 人打赏支持
数人云
粉丝 16
博文 101
码字总数 328110
作品 0
朝阳
架构师
Kubernetes vs. Serverless并非零和游戏?

作为令人兴奋和强大的平台,Kubernetes和Serverless完全配得上现在的地位。它们可以通过多种方式为组织提供敏捷性、可扩展性和计算性能方面的巨大提升。但是,我们很容易忘记Kubernetes提供了...

K8S技术社区
09/18
0
0
花了1000G,终于弄清楚了Serverless (中):Serverless 架构的优缺点

Serverless 的优势 在我使用 Serverless Framework 开发 AWS Serverless 应用的过程中,最方便的莫过于,第一次部署和第二次、第三次部署没有什么区别。只需要执行 ,几分钟后,我们代码就运...

Phodal
2017/11/21
0
0
从阿里云函数计算看Serverless的演进与思考

云计算之所以能够成为DT时代颠覆性力量,是因为其本质是打破传统架构模式,降低成本并简化体系结构,用全新的思维更好的满足了用户需求。而无服务器计算(Serverless Computing)作为这个巨大...

阿里云云栖社区
07/11
0
0
LC3视点:从阿里云函数计算看Serverless的演进与思考

云计算之所以能够成为DT时代颠覆性力量,是因为其本质是打破传统架构模式,降低成本并简化体系结构,用全新的思维更好的满足了用户需求。而无服务器计算(Serverless Computing)作为这个巨大...

scorpion
07/10
0
0
技术大咖云集,GIAC 2017全球互联网架构大会圆满落幕

  通过一线互联网技术大咖为参会者分享热点技术话题,共同探讨案例成功经验。      2017 年12月22-23日,由高可用架构技术社区和麦思博(msup)有限公司共同主办的 GIAC 全球互联网架构...

镁客网
01/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS7防火墙firewalld操作

firewalld Linux上新用的防火墙软件,跟iptables差不多的工具。 firewall-cmd 是 firewalld 的字符界面管理工具,firewalld是CentOS7的一大特性,最大的好处有两个:支持动态更新,不用重启服...

dingdayu
今天
1
0
关于组件化的最初步

一个工程可能会有多个版本,有国际版、国内版、还有针对各种不同的渠道化的打包版本、这个属于我们日常经常见到的打包差异化版本需求。 而对于工程的开发,比如以前的公司,分成了有三大块业...

DannyCoder
今天
2
0
Spring的Resttemplate发送带header的post请求

private HttpHeaders getJsonHeader() { HttpHeaders headers = new HttpHeaders(); MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8"); ......

qiang123
昨天
3
0
Spring Cloud Gateway 之 Only one connection receive subscriber allowed

都说Spring Cloud Gateway好,我也来试试,可是配置了总是报下面这个错误: java.lang.IllegalStateException: Only one connection receive subscriber allowed. 困扰了我几天的问题,原来...

ThinkGem
昨天
31
0
学习设计模式——观察者模式

1. 认识观察者模式 1. 定义:定义对象之间一种一对多的依赖关系,当一个对象状态发生变化时,依赖该对象的其他对象都会得到通知并进行相应的变化。 2. 组织结构: Subject:目标对象类,会被...

江左煤郎
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部