Serverless 的应用场景
通过将 Serverless 的理念与当前 Serverless 实现的技术特点相结合,Serverless 架构可以适用于各种业务场景。下面是其中的一些例子。
1、Web 应用
Serverless 架构可以很好地支持各类静态和动态 Web 应用。比如,当前流行的 RESTful API 的各类请求动作(GET、POST、PUT 及 DELETE 等)可以很好地映射成 FaaS 的一个个函数,功能和函数之间能建立良好的对应关系。通过 FaaS 的自动弹性扩展功能,Serverless Web 应用可以很快速地构建出能承载高访问量的站点。
2、移动互联网
Serverless 应用通过 BaaS 对接后端不同的服务而满足业务需求,提高应用开发的效率。前端通过 FaaS 提供的自动弹性扩展对接移动端的流量,开发者可以更轻松地应对突发的流量增长。在 FaaS 的架构下,应用以函数的形式存在。各个函数逻辑之间相对独立,应用更新变得更容易,使新功能的开发、测试和上线的时间更短。
部分移动应用的大部分功能都集中在移动客户端,服务端的功能相对比较简单。针对这类应用,开发者可以通过函数快速地实现业务逻辑,而无须耗费时间和精力开发整个服务端应用。
3、物联网
物联网(Internet of Things, IoT)应用需要对接各种不同的数量庞大的设备。不同的设备需要持续采集并传送数据至服务端。Serverless 架构可以帮助物联网应用对接不同的数据输入源。用户可以省去花费在基础架构运维上的时间和精力,把精力集中在核心的业务逻辑上。
4、多媒体处理
视频和图片网站需要对用户上传的图片和视频信息进行加工和转换。但是这种多媒体转换的工作并不是无时无刻都在进行的,只有在一些特定事件发生时才需要被执行,比如用户上传或编辑图片和视频时。通过 Serverless 的事件驱动机制,用户可以在特定事件发生时触发处理逻辑,从而节省了空闲时段计算资源的开销,最终降低了运维的成本。
5、数据及事件流处理
Serverless 可以用于对一些持续不断的事件流和数据流进行实时分析和处理,对事件和数据进行实时的过滤、转换和分析,进而触发下一步的处理。比如,对各类系统的日志或社交媒体信息进行实时分析,针对符合特定特征的关键信息进行记录和告警。
6、系统集成
Serverless 应用的函数式架构非常适合用于实现系统集成。用户无须像过去一样为了某些简单的集成逻辑而开发和运维一个完整的应用,用户可以更专注于所需的集成逻辑,只编写和集成相关的代码逻辑,而不是一个完整的应用。函数应用的分散式的架构,使得集成逻辑的新增和变更更加灵活。
版权声明: 本文为 InfoQ 作者【阿泽🧸】的原创文章。
原文链接:【http://xie.infoq.cn/article/9433eee31a0ee3c75e09988e6】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论