资讯首页 新闻资讯 云计算测评 云服务商动态 技术频道
上云无忧 > 云计算资讯  > 技术频道 > 2021 年值得关注的十个无服务器框架

2021 年值得关注的十个无服务器框架

发布时间: 2021-06-30 09:01:13 |浏览量:460| 评论: 0

有大量无服务器框架致力于轻松无缝地部署到 AWS Lambda 和其他无服务器云功能。根据您的应用程序需求和首选编程语言,有一两个框架可以满足您的应用程序要求,允许您构建、部署、配置和管理无服务器应用程序的生命周期。您应该阅读有关每个框架的更多信息,并选择最适合您的需求和用例的框架。

在本文中,我将重点介绍 2021 年需要关注的十大无服务器框架。

2021 年值得关注的无服务器框架

无服务器计算是一种快速增长的云技术,由于它提供的灵活性和其他有趣的功能,许多开发人员开始利用它。
无服务器帮助开发人员减轻手动部署和管理应用程序的痛苦,腾出更多时间来创建令人兴奋的技术解决方案。
但是“无服务器”这个名字往往会产生误导或有时会被误解,那么,无服务器到底是什么?

什么是无服务器?

无服务器计算是一种在云基础设施上部署和运行应用程序的方式,按使用付费,无需维护云基础设施。
与其名称相反,无服务器只是消除了公司、组织或开发人员实际租用、购买或维护服务器的需要。

什么是无服务器框架?

无服务器框架是一种以编程语言打包的工具,用于将云功能和无服务器应用程序部署到云服务提供商。
无服务器框架和无服务器平台之间存在差异。
这些是您在 2021 年应该注意的新无服务器框架:

Serverless

Serverless是迄今为止使用最广泛的多云 Node.js 无服务器框架,可帮助您使用无服务器架构构建不同的应用程序并部署到 AWS Lambda、Azure Functions、Google CloudFunctions 和其他无服务器服务提供商。

无服务器提供了广泛的功能,包括:
多云部署:无服务器允许您将应用程序打包并部署到多个无服务器服务,包括 AWS、Azure、Google Cloud 等。
开源:Serverless 是最受欢迎的开源无服务器框架,在GitHub 上拥有超过 3.89 万颗星、4.6 万个Forks和 857 名贡献者。
支持多种语言:Serverless 支持 Node.js、Python、Java、Go、C#、Ruby、Swift、Kotlin、PHP、Scala 和 F#
可通过插件扩展:无服务器框架可以通过插件进行修改或扩展。

Zappa(Python、AWS)

Zappa是一个功能齐全的 Python 框架,可让您轻松构建无服务器、事件驱动的应用程序并将其部署到 AWS Lambda。它让您可以在 AWS Lambda 和 API Gateway 上无缝部署 Django、Flask 和其他 Python 应用程序。

Zappa 框架的一些特性包括:
开源:它是一个开源命令行工具,在 GitHub 上拥有超过 11,700 颗星和 1,200 个Forks。
自动部署:Zappa 具有自动打包和部署 Flask 或 Django 应用程序到 AWS 无服务器应用程序的能力。您可以使用单个命令部署、更新或控制应用程序。
持续交付:您可以使用 Zappa 为 CI/CD 部署生成 CloudFormation 模板和压缩代码包,而不是直接部署您的应用程序。
默认 IAM 安全角色:Zappa 创建默认身份和访问管理 (IAM) 策略,为立即使用提供足够的权限。但是,您可以指定自定义 IAM 策略以满足您的应用程序要求。

Chalice(Python、AWS)

AWS Chalice是一个易于使用的受 Flask 影响的框架,允许开发人员配置无服务器 Python 应用程序并将其部署到 AWS。

AWS Chalice 提供多种功能,包括:
与各种 AWS 服务集成:Chalice 提供与其他 Amazon 服务集成的功能,包括 Amazon API Gateway、Amazon Amazon Simple Storage Service (S3)、Amazon SNS、Simple Ques Service (SQS) 等。
生成默认 IAM 策略:默认情况下,Chalice 会创建 IAM 身份以方便使用框架。
开源:拥有超过7.6k分,780个Github上Forks,及约128贡献者,Chalice是一个开源无服务器架构,确保其安全性和可靠性。
在 Serverless 之后,上面的 Zappa 和 Chalice 是使用最广泛的 Serverless 框架,并且基于 Python 构建。
在本文的其余部分,我们将介绍其他一些新兴的新兴框架,以在 2021 年构建基于 JavaScript、Java 和其他主要编程语言的无服务器应用程序。

Architect(Node,AWS)

Architect是一个复杂的无服务器框架,它利用 Node.js 和 npm 来创建、部署和管理 AWS 无服务器基础设施。

Architect 提供了有趣的功能,包括:
基础设施即代码:Architect获取 app.arc 文件并将您的指令编译为已配置和预置的 AWS 基础设施。
本地开发工作流程:Architect 允许开发人员通过简单的运行在本地编写、调试和测试代码。

在您的终端上创建应用程序环境,然后“arc sandbox”启动本地服务器。
开源:它是一个开源的无服务器框架,在GitHub 上拥有超过 1.5k 星和 30 个贡献者,使其安全可靠。
内置安全性:使用 Architect,您无需配置服务、设置 API 网关或在安全性上无需惊讶,因为它默认通过在使用 CloudFormation 部署之前将您的应用程序编译为 AWS 无服务器应用程序模型 (SAM) 应用程序来处理所有事情。

Claudia.js(Node,AWS)

Claudia.js是一个无服务器框架,它使开发人员只需几行代码即可轻松地将 Node.js 项目部署到 AWS Lambda 和 API Gateway。

Claudia.js 提供的功能包括:
开源:Claudia.js是一个开源 JavaScript 无服务器框架,在 GitHub 上拥有 3.6k 颗星、251 个分支和大约 33 个贡献者。
简短而简单的命令:Claudia.js 允许您使用单个命令部署、更新和管理您的实例。
自动配置和部署:Claudia.js 自动部署和配置您的 Node.js,并且还可以与 NPM 包完美配合。
扩展库:Claudia 提供了扩展库,让用户可以快速构建聊天机器人和 Web API 端点。
版本管理:Claudia.js 提供了一个简单的版本管理工具,因此您可以同时处理多个版本。
学习曲线小:Claudia.js 是一个易于使用的框架。它只需要使用 JavaScript 框架和学习基本命令的经验。

Flogo (Go, AWS)

Flogo是一个用 Golang 编写的 Ultralight 边缘微服务框架。它允许仅使用 Docker 将应用程序轻松部署到 AWS Lambda。

以下是 Flogo 提供的一些关键功能:
可视化环境:除了在 Golang 中编码外,Flogo 还提供了在可视化 Web UI 界面中设计应用程序的功能。
事件驱动:Flogo 可帮助您创建仅在有明确呼叫、触发器或操作时才响应的应用程序,从而让您节省更多。
开源:Flogo 是开源的,可以在保持安全可靠的同时进行定制。
灵活部署:在 Golang 中编程,Flogo 允许您将应用程序部署为轻量级无服务器功能、容器或物联网边缘设备上的静态二进制文件。

DEEP(Node,AWS)

DEEP是一个全栈 JavaScript 无服务器 Web 框架,它使开发人员能够以无服务器方法使用微服务架构构建云原生应用程序。DEEP 是 Mitoc 的DEEP Marketplace 的一部分,这是一项软件服务,可让客户从微服务列表中进行选择和部署。
DEEP 提供的技术和功能包括:
开源:DEEP 框架是一个新兴的 JavaScript 开源工具,在 GitHub 上拥有 531 颗星、71 个分支和 12 位贡献者。
IAM 和 Cognito 安全性:DEEP 同时使用 AWS IAM 和 Cognito 来保护
与各种 AWS 服务集成:DEEP 与前端的 Amazon S3 和 CloudFront、DynamoDB 数据库和后端的 AWS Lambda、API 网关和 SNS 很好地集成。
类似生产的开发环境。
DEEP 使开发人员可以轻松地更快地构建、测试和部署无服务器应用程序。

Lambada 框架(Java、AWS)

Lambda 是一个用 Java 构建的 REST 框架,它使用 JAX-RS API,让您可以轻松地将无服务器应用程序部署到 AWS Lambda 和 API Gateway。
Lambada 框架提供以下主要功能:
开源:Lambada是一个开源工具,在 Github 上拥有超过 240 颗星和 46 个分支。
支持常用JAX-RS注解:支持Path、PathParam、GET、POST、PUT、DELETE、HEAD等常用JAX-RS注解。
Lambda 函数的基于 XML 的配置,包括 VPC、自定义执行角色

Sparta(Go, AWS)

与 Flogo 一样,Sparta是一个用 Go 编写的无服务器框架,用于构建、测试 Golang Web 应用程序并将其部署到 AWS Lambda。

与各种 AWS 服务集成:Sparta 支持与所有 AWS lambda 事件源(包括 DynamoDB、Amazon S3、Amazon SNS 和 Amazon SES)无缝集成。
默认安全:Sparta 定义了默认IAM安全角色,其访问权限有限,以最大限度地减少服务攻击。
开源:Sparta是一个开源框架,在 GitHub 上拥有 681 颗星和 52 个分支。
API 网关:它允许您通过在配置期间将其绑定到API 网关REST API来使您的服务 HTTPS 可访问。或者,公开 WebSocket API 以获得更具交互性的体验

Spring Cloud 函数(Java、AWS/Azure/OpenWhisk)

Spring Cloud Function是一个复杂的无服务器框架,用于编写 Java 应用程序并将其部署到多个无服务器解决方案,包括 AWS Lambda、Microsoft Azure、Apache OpenWhisk 和 Google Cloud Platform。

多云适配器:适用于 AWS、Azure、OpenWhisk 等云平台的适配器
支持多版本部署:将函数作为 JAR 文件部署的包,具有独立的类加载器,以支持在单个 JVM 中的部署。
各种编程风格:反应式、命令式或混合式
开源:一个开源项目,拥有 690 个 Github 星和 361 个 Github 分支。

参考链接:https://faun.pub/ten-serverless-frameworks-to-watch-in-2021-9cc02ece0f95

更多【技术频道】相关文章

有话要说

全部评论

暂无评论
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部