Serverless 架构是云计算发展的产物,它继承了云计算的优点,并具备极致弹性、按量付费、免运维等优势。
在 1961 年麻省理工学院百周年纪念典礼上,约翰·麦卡锡(1971 年图灵奖获得者)第一次提出了 “Utility Computing” 的概念,这个概念可以认为是云计算的一个“最初的”,“超前的” 遐想模型;1984 年,SUN 公司联合创始人 John Gage(约翰·盖奇)提出了“网络就是计算机(The Network is the Computer)”的重要猜想,用于描述分布式计算技术带来的新世界;到了 1996 年,康柏(Compaq)公司的一群技术主管在讨论计算业务的发展时,首次使用了 Cloud Computing 这个词,并认为商业计算会向 Cloud Computing 的方向转移。这也是 “云计算” 从雏形到正式被提出的基本过程。
自 “云计算” 被提出之后,其可谓是如同雨后春笋般,蓬勃发展:
至此,云计算进入到了更加快速的发展阶段。
云计算飞速发展的阶段,云计算的形态也在不断的演进,从 IaaS 到 PaaS,再到 SaaS,云计算逐渐的 “找到了正确的发展方向”。
2012 年由 Iron.io 的副总裁 Ken Form 所写的一篇名为《Why The Future of Software and Apps is Serverless》 的文章中,提出了一个新的观点:即使云计算的已经逐渐的兴起,但是大家仍然在围绕着服务器转。不过,这不会持续太久, 云应用正在朝着无服务器方向发展,这将对应用程序的创建和分发产生重大影响。并首次将 “Serverless” 这个词带进了大众的视野。
一直到 2014 年 Amazon 发布了 AWS Lambda 让 “Serverless” 这一范式提高到一个全新的层面,为云中运行的应用程序提供了一种全新的系统体系结构,至此再也不需要在服务器上持续运行进程以等待 HTTP 请求或 API 调用,而是可以通过某种事件机制触发代码执行,通常这只需要在 AWS 的某台服务器上配置一个简单的功能。此后 Ant Stanley 在 2015 年 7 月名为 Server are Dead…的文章中更是围绕着 AWS Lambda 及刚刚发布的 AWS API Gateway 这两个服务解释了他心目中的 Serverless,并说 Servers are dead … they just don’t know it yet.
2015 年,在 AWS 的 re:Invent 大会上,Serverless 的这个概念更是反复的出现,其中包括了 The Serverless Company Using AWS Lambda 和 JAWS:The Monstrously Scalable Serverless Framework 的这些演讲。
随着 Serverless 这个概念的进一步发酵,2016 年 10 月在伦敦举办了第一届的 ServerlessConf,在两天时间里面,来自全世界 40 多位演讲嘉宾为开发者分享了关于这个领域进展,并且对未来进行了展望,提出来了 Serverless 的发展机会以及所面临的挑战,这场大会是针对 Serverless 领域的第一场具有较大规模的会议,在 Serverless 的发展史上具有里程碑的意义。
截止到 2017 年,各大云厂商基本上都已经在 Serverless 进行了基础的布局,尤其是国内的几大云厂商,也都先后在这一年迈入 “Serverless时代”。从 IaaS 到 PaaS 再到 SaaS 的过程中,云计算所表现出的去服务器化越来越明显,那么 Ken Form 所提出来的 Serverless 又是什么,它在云计算发展的过程中,又在扮演什么角色呢?
IaaS、PaaS、SaaS的区别
云计算的十余年发展让整个互联网行业发生了翻天覆地的变化,Serverless 作为云计算的产物,或者说是云计算在某个时代的表现,被很多人认为是真正意义上的云计算,伯克利团队甚至断言 Serverless 将会是引领云计算下一个十年的新范式。
Serverless 翻译成中文是无服务器,所谓的无服务器并非是说不需要依靠服务器等资源,而是说开发者再也不用过多考虑服务器的问题,可以更专注在产品代码上,同时计算资源也开始作为服务出现,而不是作为服务器的概念出现,Serverless 是一种构建和管理基于微服务架构的完整流程,允许用户在服务部署级别而不是服务器部署级别来管理用户的应用部署。
与传统架构的不同之处在于,它完全由第三方管理,由事件触发,存在于无状态(Stateless),暂存(可能只存在于一次调用的过程中)在计算容器内,Serverless 部署应用无须涉及更多的基础设施建设,就可以基本实现自动构建、部署和启动服务。
近些年来,微服务(Micro Service)是软件架构领域另一个热门的话题,如果说微服务是以专注于单一责任与功能的小型功能块为基础,利用模组化的方式组合出复杂的大型应用程序,那么可以进一步认为 Serverless 架构可以提供一种更加 “代码碎片化” 的软件架构范式,而这一部分称之为 Function as a Services(FaaS)。而所谓的“函数”提供的是相比微服务更加细小的程序单元。
例如,可以通过微服务代表为某个客户执行所有 CRUD 操作所需的代码,而 FaaS 中的函数可以代表客户所要执行的每个操作:创建、读取、更新以及删除。当触发 “创建账户” 事件后,将通过函数的方式执行相应的“函数”。单就这一层意思来说,可以简单地将 Serverless 架构与 FaaS 概念等同起来。但是就具体的概念深刻探索的话,Serverless 和 FaaS 还是不同的,Serverless 和 FaaS 被广为接受的关系是:
Serverless = FaaS + BaaS (+ .....)
在这个关系中,可以看到 Serverless 的组成除了 FaaS 和 BaaS 之外,还有一系列的省略号,其实这是 Serverless 给予给大家的遐想空间,给予这个时代的一些期待。
从 2012 年,Serverless 概念被正式提出之后,2014 年 AWS 带领 Lambda 开启了 Serverless 的商业化,再到 2017 年各大厂商纷纷布局 Serverless 领域,再到 2019 年,Serverless 成为热点议题在 KubeCon 中被众多人参与探讨,Serverless 随着时间的不断推进,各种技术部的不断进步,正在逐渐的朝着更完整,更清晰的方向发展,随着 5G 时代的到来,Serverless 将会在更多领域发挥至关重要的作用。
从 IaaS 到 FaaS 再到 SaaS,再到如今的 Serverless;从虚拟空间到云主机,从自建数据库等业务,到云数据库等服务,云计算的发展是迅速的,未来的方向和形态却是模糊的,没人知道云计算的终态是什么。
诚然,现在有人说 Serverless 实现了当初了云计算目标,Serverless 才是真正的云计算,但是没人可以肯定的说, Serverless 就是云计算的终态表现,或许,Serverless 也可能只是一个过渡的产物,但对此我们保持着开放的态度,不如将答案交给时间去验证。
以上就是关于“云计算发展中Serverless扮演什么角色,如何正确认识Serverlss”的介绍了,感谢各位的阅读,如果大家想要了解更多相关的内容,欢迎关注群英网络,小编每天都会为大家更新不同的知识。
版权申明:文章来自网络,如有侵权,请联系站长邮箱:mmqy2019@163.com
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008