从阿里云开发者大会看Serverless现状与发展趋势

本文涉及的产品
简介: 2021年5月29日,阿里云开发者大会举办,会议上阿里云在端侧、边侧、云侧,为开发者提供了自由的发挥空间,让阿里云“被集成”的理念再一次深入人心。本次峰会中,我最为关注的部分是云原生部分,在经历了纯IaaS层作为底座的云计算1.0时代后,以云原生服务为底座的2.0时代,会逐步成为系统构建的核心。在云原生领域中,无服务化Serverless又是云计算的发展的未来。阿里云的函数计算是我最早的接触的无服务架构的重要服务。在《Serverless发展历史》一文中我也曾经提到过,阿里云早在2016年就发布了自己的函数计算服务,仅比AWSLambda仅仅晚了两年的时间。

阿里云Serverless概述


阿里云Serverless的官方链接是:https://www.aliyun.com/activity/middleware/serverless

网站中的内容主要是对阿里云函数计算、Serverless平台以及应用场景进行了介绍,最后是完整的入门手册全面介绍函数计算。


从阿里云Serverless我们能了解到围绕在函数计算服务的生态服务。其中对象存储、API网关比较常见。日志服务便于函数计算服务的调试和跟踪。至于批量计算和函数计算的关系,我理解是批量计算调用函数计算,按量计费的方式,但是在控制台上并没有非常明显的入口或者提示。


微信图片_20220105111503.jpg

另外,按照阿里云提供的Serverless能力来说,还应该包含Serverless容器服务ASK,Serverless应用引擎SAE以及用于函数计算编排的工作流服务等。在阿里云的服务目录可以搜索到这些服务,但是在Serverless首页上并没有过多的去宣传这些服务和应用场景。


函数服务


2020年到2021年,阿里云函数服务还是发生了很大的变化,例如在触发器上增加了至少五种类型。触发器的种类决定了函数计算应用场景的丰富程度。这是2020年初的触发器截图:


微信图片_20220105111521.jpg


这是2021年的触发器截图,通过对比,可以很明显看到函数服务在一年时间里,增加了五种触发器类型(API网关、loT、云监控、消息队列Kafaka和事件总线触发器)。触发器的增多,


微信图片_20220105111546.jpg


以云监控触发器为例,比如你的ECS由人为引起了重启,你可以触发你的函数计算去处理自动化运维操作。通过云监控中的事件进行触发配置,不过这里不太方便的一点,新的几个触发器配置起来都不太方便,都需要通过查询文档才能知道跳转到哪个平台进行关联性配置,用户体验方面有待提升。通过这种手段,函数计算的可观测性得到了提高。


微信图片_20220105111608.jpg


在我们实际的生产环境中,阿里云函数计算已经稳定运行了一年多的时间,通过对函数计算的使用,节约了线上系统的成本,研发人员在开发和维护时也更加方便。至少有三种业务场景使用到了函数计算:


提供二维码申请迁移产品License页面,用户提交申请后自动将请求转发至钉钉流程中

迁移SaaS产品中,自动进行License审批,通过函数计算服务提供了RESTAPI服务

通过函数计算作为路由转发层,对外向第三方系统提供RESTAPI接口,作为接受请求的服务端,之后再将请求转发至多个系统中


微信图片_20220105111639.jpg


轻量级Serverless应用构建

——Serverless Devs


函数计算除了在最佳实践中成为连接云原生服务组件之间最后一公里的服务,在单独构建轻应用上也具备非常大的优势,特别是面向业务属性很强的应用时。这是阿里云官方给出的一张ServerlessIT架构模式,这里重点突出了以函数计算为轴心的无服务化轻应用构建的基本框架。


微信图片_20220105111701.jpg


但是在构建此类应用过程中,开发者往往遇到诸多问题,例如:管理困难,调试困难、关联服务多、部署繁琐等诸多问题。同时在混合云上,由于每个云厂商提供了各自不同的工具,很难使用一套工具来管理不同云上的Serverless应用。在本次峰会上,我也非常欣喜的看到,阿里云提供了一套全新的Serverless开发者工具平台——ServerlessDevs,解决了上述提到的开发痛点。目前ServerlessDevs工具支持编排阿里云函数计算、Serverless工作流、NAS服务、资源编排、权限管理、VPC、日志服务,基本可以满足日常开发需求。


微信图片_20220105111717.jpg


从上图我们看到,Serverless Devs目前已经支持了主流的五大公有云。同时提供了大量的不同语言的框架模板,加速应用开发。ServerlessDevs目前的官网地址是www.serverless-devs.com,有大量的学习资料供开发者使用。


微信图片_20220105111731.jpg


目前该项目在Github上获得了582星,还处于起步阶段,所以有兴趣的开发者也可以参与到项目贡献中。


OAM/KubeVela


然以函数服务为核心的轻应用能够满足很多业务场景,但是对于复杂的应用架构支持上还存在天然的不足。谈到这一点不得先说一说OAM(OpenApplication Model),一个用于描述应用程序与其实现解耦的规范。简单来说,OAM就是让DevOps职责变得更为清晰。


微信图片_20220105111753.jpg

当然OAM作为一种规范,并不是强制使用Kubernetes,但是目前几大公有云厂商推出的基于OAM的实现基本都是基于K8S。KubeVela就是基于这一规范,由阿里巴巴和微软共同开源的项目。(了解KubeVela https://kubevela.io/


微信图片_20220105111810.jpg


对于应用开发人员来讲,KubeVela是一个非常低心智负担的云原生应用管理平台,核心功能是让开发人员方便快捷地在 Kubernetes 上定义与交付现代微服务应用,无需了解任何Kubernetes本身相关的细节。


微信图片_20220105111816.jpg


通过对底层基础架构层的进一步抽象,基于容器环境的系统可以在多云之间自由移动,降低厂商锁定的风险。


微信图片_20220105111838.jpg


总结


作为云计算未来发展方向的Serverless已经成为各大云厂商的必争之地,从本次峰会上看,阿里云在这方面也是全力投入。通过底层技术不断迭代,为阿里的云钉一体化发展战略提供了强大的技术保障,也让云边协同的能力得以发挥。


对于普通开发者来说,云计算的趋势已经不可逆转,而云原生已经成为未来工作必须掌握的技能之一,也是缓解“35岁危机”最有效的自我升级的方式。


微信图片_20220105111853.jpg




相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
14天前
|
存储 Cloud Native 大数据
国内独家|阿里云瑶池发布ClickHouse企业版:云原生Serverless新体验
全面升级为云原生架构,支持云原生按需弹性Serverless能力,解决了长期困扰用户的集群扩展效率和平滑性问题。
国内独家|阿里云瑶池发布ClickHouse企业版:云原生Serverless新体验
|
14天前
|
运维 Serverless 应用服务中间件
Serverless 应用引擎产品使用之在阿里云Serverless中函数计算FC nginx 部署上去之后放置静态页面如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
219 0
|
14天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
989 0
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
|
14天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之在使用阿里云函数计算部署网站时,网站打开不稳定如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
169 0
|
14天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中通过调用函数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
282 10
|
14天前
|
运维 文字识别 Serverless
Serverless 应用引擎产品使用之在阿里云函数计算中,需要处理的文件大于100MB如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
132 5
|
14天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中,容器运行过程中的最大内存使用量获取如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
35 2
|
14天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使用阿里云API或SDK从函数计算调用ECS实例的服务如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
41 4
|
14天前
|
弹性计算 JSON 运维
Serverless 应用引擎产品使用之阿里云serverless的s deploy,本地的代码编译后的镜像无法推送上去如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
30 0
|
14天前
|
运维 Serverless PHP
Serverless 应用引擎产品使用之在阿里云Serverless中耗时操作执行如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
22 0

热门文章

最新文章

相关产品

  • 函数计算