马上开始:五种具备可行性的无服务器框架应用方案

本文涉及的产品
简介:

【51CTO.com快译】很多朋友搞不清“无服务器”与“功能即服务”架构之间的区别。其一,无服务器其实有点用词不当,其中当然存在服务器元素,只是大家不必亲自维护。您需要做的只是上传代码片段并由托管服务处理其余工作。

不过哪些应用程序适合这种部署方式?答案与您面对AWS或者Azure时基本相同; 这些系统的设计目标都是通过具体操作触发代码块。以下五种常见的无服务器框架可行方案相信值得您加以参考。

马上开始:五种具备可行性的无服务器框架应用方案

 
API
作为无服务器架构最简单也最直接的应用之一,我们可以通过服务或者单页面应用创建REST API以返回待消费数据。
REST API并不难构建。一般来讲,大家只需要一套基本Web框架、一套用于渲染数据返回格式的库(例如JSON)以及用于同数据后端进行交互的粘接代码即可。利用无服务器架构,开发者能够专注于编写并部署支持该API所需要的代码,其它任务则不再需要费心。
REST API当中多数需要手动调节的功能,例如自动规模伸缩,皆可在无服务器框架中自动完成。另外,其按资源使用量付费的模式意味着您能够拥有一套轻量化且访问成本极低的API,且几乎无需任何部署工作。
 
创建webhook
这种被广泛使用的HTTP上回调机制能够轻松实现推送、管道与插件等功能,从而提升Web应用的实用性。无服务器框架特别适用于webhook场景,且相关优势与创建API类似:低运营成本、低维护要求、可自动规模伸缩。大家完全可以在Azure Functions上利用Node.js实现webhook以处理Twilio服务中的短信消息或电话呼叫。
更重要的是,大部分webhook类活动并不需要大量代码。因此,其非常适合由lambda式无服务器设计提供的面向功能方案实现,从而显著简化整个交付流程。
提供静态内容
无服务器架构还提供一种简单方法以支撑静态内容,包括图片、音频或者HTML页面等不会被应用修改的内容。静态资产可存储在多个后端当中,包括Amazon S3存储桶,并通过地理化缓存(例如Cloudflare)实现加速。(如果您使用S3,则可选择Amazon Route 53以将URL映射至特定资源; 在基本场景下甚至完全无需涉及AWS Lambda。)
同样的,无服务器模式的优势在于自动接着各项组件以契合需求。我们也能够在必要时以相对简单的方式添加动态功能。不过在这种情况下,功能在启动时间可能对性能造成影响,因此需要对应引入地理缓存机制。
 
单页面应用
这类用例可以视为上述方法的集合体。单一页面的基础资产可视为静态内容; 前端数据提供由API调用实现。前端的数据渲染则通过JavaScript框架完成。
优势:应用的每项元素皆可独立实现并进行独立扩展。弊端:应用必须作为多项独立功能的集合,而非单一统一项目。这意味着我们无法利用现代源代码控制与项目管理技术对其进行全面打理。另外,大家还需要引入React、Angular或者Vue.js等前端框架——不过这对于有经验的Web开发者来说应该不是什么问题。
运行在后台的事件驱动型应用
无服务器应用可响应事件,但并不是说这些事件就必须属于HTTP请求。其可以为云服务中的事件或消息管道,也可以由运行计划负责触发——大家可以借此方便地执行被动或者低优先级功能。例如被上传至S3存储桶的图像可解决对应功能,旨在为该图像提供对应的元数据标签、大小调整并根据图像识别或分析API的反馈进行裁剪。
无服务器框架的突出特性在于,其中的各个组件采取松散耦合模式——或者可以将其形容为微服务形式。如果大家不希望采取这样的组合方式或者面对的是整体式应用的移植工作,那么无服务器架构可能并不合适。但在另一方面,其显然更适合支持新型、元素数量较少且各组件需要独立扩展的应用。

本文作者:核子可乐译

来源:51CTO
相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
1月前
|
定位技术
GPS北斗卫星同步时钟(时间同步服务器)建设施工部署方案
GPS北斗卫星同步时钟(时间同步服务器)建设施工部署方案
GPS北斗卫星同步时钟(时间同步服务器)建设施工部署方案
|
1月前
|
监控 容灾 定位技术
云服务器的容灾方案
云服务器的容灾方案
|
2月前
|
弹性计算 网络安全 数据安全/隐私保护
ECS热门应用 | 解决Guestosssh异常
通过ECS实例快速发现操作系统内部的问题,并给出对应的修复方案。
129301 5
|
2月前
|
弹性计算 人工智能 安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
434 0
|
2月前
|
存储 弹性计算 安全
带你读《从基础到应用云上安全航行指南》——九大提升ECS实例操作系统安全性的技巧(1)
带你读《从基础到应用云上安全航行指南》——九大提升ECS实例操作系统安全性的技巧(1)
335 1
|
2月前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
480 0
|
2月前
|
存储 弹性计算 安全
带你读《从基础到应用云上安全航行指南》——九大提升ECS实例操作系统安全性的技巧(2)
带你读《从基础到应用云上安全航行指南》——九大提升ECS实例操作系统安全性的技巧(2)
664 1
带你读《从基础到应用云上安全航行指南》——九大提升ECS实例操作系统安全性的技巧(2)
|
1月前
|
弹性计算 人工智能 物联网
挖掘阿里云ECS的潜力:创意应用和未来可能性
在云厂商中,我觉得开发者更信赖阿里云的云产品,而且随着阿里云最近宣布云产品降价的消息,会有更多的开发者和企业选择阿里云的云产品。这里拿阿里云的云服务器来做说明,阿里云的云服务器ECS为用户提供了强大的计算资源和灵活的扩展性,使其成为搭建各种有趣和创意应用的理想平台。除了已知的小游戏、小程序和个人网盘等应用案例之外,本文还会进一步探讨ECS在特定场景下的实践经验,并挖掘其在其他领域的潜力,为大家带来更多创意和启发。
557 3
挖掘阿里云ECS的潜力:创意应用和未来可能性
|
1月前
|
弹性计算 网络安全 文件存储
ECS热门应用 | 安装家用内网穿透服务
使用云服务器ECS,让家庭网络可以被外部网络访问。不在家时,也可以读取备份资料。
|
1月前
|
开发框架 Java .NET
JavaWeb概念、应用、服务器
静态网站是指在服务器上预先准备好的网页内容,用户访问时服务器直接将这些静态页面发送给用户浏览器,没有经过额外的处理或数据库查询。
12 0