
作为云计算产业公认的下一个技术风口,Serverless 对于应用开发者来说已经是耳熟能详的概念了。根据 三方调研机构分析预测,2020 年全球 Serverless 市场规模将达到 76 亿美元,而到 2025 年则会猛增到 211 亿美元,年均复合增长率高达 22.7%。如今,云计算商业用户中有超过半数开发者在采用 Serverless 构建技术架构,可以看到 Serverless 将成为应用发展创新业务必备的技术之一。
那么,究竟什么才是 Serverless 的核心概念?Serverless 诞生以来走过了怎样的路线?有哪些特征?在 2020 年 11 月 24 日举办的华为应用市场 AppGallery Connect 研习社•沙龙西安站上,华为 Serverless 资深架构师们为大家带来了 Serverless 的业界洞察与发展趋势展望。
一、Serverless 概况与历史轨迹
1、Serverless 特征
· 低成本。开发者用函数编写应用后部署在云端,出现请求之后云端资源才会按需收费,显著降低了开发者的交付成本与使用成本。
· 免运维。在 Serverless 方案中,云端服务的部署、升级、在线缩扩容等微服务时代的复杂操作都由后端服务来完成,大大减轻了开发者的运维负担。
· 上线快。Serverless 分为两大部分,一是 FaaS,通过开发 Function(函数)的形式实现业务逻辑;二是 BaaS,也就是云存储、云数据库等后端服务。通过端侧直接访问后端服务、事件触发、端云同步、函数粒度的服务上线等机制,可极大缩短应用的迭代周期,提升业务的上线速度。
2、Serverless 发展历史与驱动要素
自单体服务架构普遍转向微服务架构后,虽然传统存在的一些问题,诸如代码变更困难、维护成本高、上线周期长等障碍得到了解决,但由于微服务需要将架构解耦成众多独立的小模块,因此对这些模块进行部署、监控、弹性伸缩等生命周期运维工作就成为了一大挑战。
基于这样的背景,云服务厂商开始利用 Serverless 技术来帮助开发者解决微服务的运维需求。Serverless 以云函数作为业务逻辑的基本计算单元,围绕云函数还有对象存储、数据库等队列实现 BaaS 后端服务,组成完整的 Serverless 应用来帮助开发人员的应用快速上线,并将开发者的精力从运维工作中解放出来,更多投入业务创新层面。
随着 Serverless 技术的发展,开源领域也有许多项目为开源 FaaS 贡献力量,从而使整个 Serverless 生态逐渐成长壮大。
3、从微服务到 Serverless 的演进
当下的微服务架构中,首选的架构设计方法就是领域驱动设计。领域驱动设计方法在落地时需要相当复杂的过程,拆分出来的时间、领域,所做的聚合都可能不够理想。随着架构演进,前期服务的解耦再组合也会产生相应的成本。相比之下,Serverless 大的优势是可以根据业务快速创新函数。业务流程的每一个步骤都可以映射为一个函数,从而实现一个业务逻辑来部署到云端,实现快速上线交付。现有微服务也可以将接口转换为函数,实现免运维的成果。
在编码测试层面,Serverless 可以提供比微服务更小、更细粒度的代码实现,对应的测试单元体积也会更小,这些都能加快开发与测试的速度,缩短交付周期。
在交付和运维层面,Serverless 架构中函数的发布与治理由平台负责,进一步加快了业务逻辑上线;运维的部署、升级、弹性缩扩容也是平台完成,因而可以从传统的 DevOps 演进为 NoOps 的状态。
二、AppGallery Connect Serverless 服务
AppGallery Connect,简称 AGC,是华为面向全球应用开发者的一站式服务平台。在沙龙上,华为团队为开发者们呈现 AppGallery Connect Serverless 服务的技术愿景与特色。
1、AppGallery Connect Serverless 现状与愿景
AppGallery Connect Serverless 的整体方案分为三大层面:
上层对接行业解决方案,包括华为内部的音乐、视频等应用,以及 三方的快应用、快服务等。针对这些行业方案,华为 Serverless 生态会提供一些便捷的软件开发包。
中间层是 AGC Serverless Framework,其中包括云函数、云存储、云数据库,形成 BaaS+FaaS 的综合体,共同帮助开发人员快速实现业务逻辑,卸除运维压力。
底层依赖华为云自身的 IaaS 和 PaaS 能力,提供坚实可靠的基础设施支持。
版权声明:本文为原创文章,版权归 头条123 所有,欢迎 本文,转载请保留出处!