作者 | 叔同
导读:Serverless 将开发人员从繁重的手动资源管理和性能优化中解放出来,就像数十年前汇编语言演变到高级语言的过程一样,云计算生产力再一次发生变革。Serverless 的核心价值是什么?阿里云发布了哪些 Serverless 生态产品,各有什么特别之处?阿里云函数计算的表现如何?阿里云研究员叔同将通过本文分享阿里布局 Serverless 的历程和决心。
引言
早在 2009 年,伯克利曾预测云计算将会得到蓬勃发展。近乎无限的云端计算资源,客户无需自建机房,按需要付费成为可能,企业在 IT 方面的投入显著降低,云计算所释放出的技术红利让越来越多的企业客户从云下搬到了云上。
然而,大部分客户在使用云服务时,仍然要面对复杂的运维、较高的闲置资源、无法做到真正按需付费,云计算的优势并未发挥到极致。
2015 年 AWS 推出了 Lambda 服务,2017 年阿里云推出了函数计算 FC,2019 年伯克利再次预测 Serverless 将取代Serverful 计算;由此,Serverless 引发业内的广泛关注。
Serverless 将开发人员从繁重的手动资源管理和性能优化中解放出来,就像数十年前汇编语言演变到高级语言的过程一样,云计算生产力再一次发生变革。与其说 Serverless 是云计算的升华,不如说 Serverless 重新定义了云计算,将成为云时代新的计算范式,引领云的下一个十年。
Serverless 的核心价值
快速交付、智能弹性、更低成本,这是 Serverless 的核心三大价值。
首先,是快速交付
Serverless 做了大量的端对端的整合以及云服务之间的集成,为应用开发提供了最大便利性,用户无需关注底层的 IaaS 资源,只需专注于业务逻辑的开发,聚焦于业务创新,大大缩短了企业应用 Go-To-Market 的时间,创造了更大的业务价值。
其次,是极致的弹性
在 Serverless 之前,相信很多开发者都有过类似的经验,一旦遇到突发流量可能会直接导致系统超时、异常,甚至是崩溃;当我们在做大促的时候,需要进行多次的容量评估并提前做好扩容,一旦评估不准,可能会带来灾难性的影响;而有了Serverles 之后,应对突发流量、容量评估等都将变得更加简单。
其三,是更低的成本
就跟我们生活中的水电煤一样,Serverless 只为实际产生的资源消耗付费,而无需为闲置的资源买单。
基于以上三大核心价值,Serverless 势必将会获得越来越多企业和开发者关注和青睐。
阿里布局 Serverless 的历程
阿里巴巴的 Serverless 实践在业内处于领先地位,不仅淘宝、支付宝、钉钉等已经将 Serverless 应用于生产业务,阿里云上的 Serverless 产品更是帮助微博、石墨、跟谁学、Timing 等数万家企业客户成功落地 Serverless,覆盖前端全栈,小程序、新零售、游戏互娱、在线教育等行业或场景。
丰富的 Serverless 产品给客户提供了更多的选择,面向函数的 Function Compute、面向应用的 SAE、面向容器编排的 Serverless K8s、以及面向容器实例的 ECI,构成当前所有云厂商中最完整的 Serverless 产品矩阵。
而这些 Serverless 产品的背后,是阿里云基础设施的四大核心技术——神龙架构、沙箱容器、盘古存储、洛神网络,它们为 Serverless 提供了稳固的基石与强大的核心竞争力。
完善的 Serverless 产品需要配备完备的后端云服务,而今天我们将隆重发布的事件总线 EventBridge 和 Serverless Workflow 说明了阿里云在 Serverless 战略上的投入和决心。 9 月,阿里云重磅发布四款 Serverless 生态产品,助力阿里云 Serverless 的快速发展。
- 沙箱容器 2.0:阿里云 Serverless 产品的基石,更稳定、更安全、更弹性。
- EventBridge:云上事件枢纽,原生支持 CloudEvents,更标准、更规范。
- Serverless 工作流:提供简单灵活、可视化的函数编排,更直观、更便捷。
- 函数计算 2.0 Plus:携手开发者工具 + 应用中心,引领开发者体验全面升级。
这四款产品有什么特别之处?
沙箱容器 2.0,更轻更快的云原生运行单元,为阿里云 Serverless 产品提供了稳固的基石与强大的核心竞争力。
首先,它可以为用户提供隔离可靠、敏捷高效、裸机性能的运行环境。其次, 50ms 冷启动、3ms 热恢复,更是满足 Serverless 对于资源刚性交付的超高要求。其三,通过软硬件协同设计,实现了性能零损耗。地基扎得稳,高楼方能拔地而起。只有基建稳固了,运行在 Serverless 产品之上的应用才能拥有更好的稳定性保证。
阿里云重磅发布 Serverless 事件总线 EventBridge,就好像人的神经中枢,通过 EventBridge 我们将打造云上的事件枢纽。CloudEvents 原生支持,使得 Serverless 事件更加标准化、规范化、统一化。事件无处不在,EventBridge 可以轻松连接云服务、云应用和 SaaS 应用,进一步加速阿里云 Serverless 产品端到端的集成。
2020 年,阿里云重磅发布 Serverless 工作流,它是一个用来协调多个分布式任务执行的全托管 Serverless 云服务,化繁为简,通过简单灵活的工作流描述,可视化的函数编排模型,即可轻松构建媒体处理流程、机器学习流水线、自动化运维流程等复杂的工作。Serverless Workflow 让函数编排更简单、更直观、更便利。
2019 年,阿里云首次发布函数计算 2.0,提供更丰富的运行时、更极致的弹性、更稳健的计算层调度;而今天,函数计算 2.0 Plus 再次升级,携手阿里巴巴丰富开发者框架,从开发者体验出发,全新推出 Serverless-tools 与 Serverless 应用中心,打造更加开放、标准、无厂商绑定的 Serverless 社区。
与此同时,容器镜像与性能实例的加持更是融合了容器生态,打破函数最小运行单位,让开发者使用起来更简单。开发者一步上云、一键 Severless 或将成为现实。
Serverless 实践逐渐深入
好的产品离不开客户的实践。目前,已有大量来自不同领域的客户选择阿里云的 Serverless,通过 Serverless 来构建新业务或优化原有业务。
新浪微博将 Serverless 技术应用于个性化图片处理,实现了百毫秒的极速弹性,综合成本下降 35%。在线教育客户跟谁学,借助 Serverless 技术,高峰期的实时音视频转码效率提升了 93%,综合成本下降 35%;而入选了“2019 福布斯中国最具创新力企业榜”的无人驾驶卡车品牌图森未来,通过 Serverless 技术实现秒级启动千节点 GPU 容器集群,缩短了 60% 的模型测试时间;在线教育平台 Timing,基于 SAE 零改造微服务架构实现 Serverless 化,计算成本下降 30%。
接下来,我们将通过一个 Demo 来演示音视频转码的场景,看下阿里云函数计算的优秀表现。
以转化 1 万个音视频的场景为例,在左边转码效率的比对上,函数计算集成了音视频处理能力,更极致的发挥了云计算的弹性能力,结合 Serverless 工作流的编排能力,分片过程得以自动化,而自建转码集群,需要独立构建分片程序,效率不高,从视频中左边的转码效率对比图看,函数计算节省了 59% 的转码时长;在右边的转码成本的比对上,从 vCPU 弹性/视频处理吞吐/排队延迟看,代表自建转码集群的红色曲线,面临严重的闲置资源浪费,代表函数计算的蓝色曲线代表函数计算,将非转码时的计算资源压缩到最低,消除了闲置资源成本,同时结合 Serverless 工作流的编排能力,让原本复杂的转码过程更简单、更自动化,函数计算节省了 48% 的成本。 可见,函数计算可以帮助研发效率和资源效率获得了不同程度的提升。
未来已来,Serverless 正当时!
从领先到普惠,阿里云的 Serverless 正以更为极致的方式在更高效、更经济、更开放的道路上越走越远,为阿里云上的企业客户带来更大的价值。未来十年,Serverless 值得期待! 2020 云栖大会期间,阿里巴巴正式成立云原生技术委员会,阿里巴巴高级研究员蒋江伟担任委员会负责人,达摩院数据库首席科学家李飞飞、阿里云计算平台高级研究员贾扬清、阿里云原生应用平台研究员丁宇等多位阿里技术负责人参与其中。蒋江伟表示,委员会将大力推动阿里经济体全面云原生化,并沉淀阿里巴巴 10 多年的云原生实践,对外赋能数百万家企业进行云原生改造,提升 30% 研发效率的同时降低 30% IT 成本,帮助客户迈入数字原生时代。此次委员会的成立,也意味着阿里已经将云原生升级为新的技术战略方向。
阿里云目前拥有国内规模最大的云原生产品家族和开源生态,提供云原生裸金属服务器、云原生数据库、数据仓库、数据湖、容器、微服务、DevOps、Serverless 等超过 100 款创新产品。在云栖大会期间,阿里也对外发布云原生全景图,全面展示其在云原生领域的布局和决心。
课程推荐
为了更多开发者能够享受到 Serverless 带来的红利,这一次,我们集结了 10+ 位阿里巴巴 Serverless 领域技术专家,打造出最适合开发者入门的 Serverless 公开课,让你即学即用,轻松拥抱云计算的新范式——Serverless。点击链接即可免费学习课程:[https://developer.aliyun.com/learning/roadmap/serverless](