入门
开发人员工具
-
框架
-
持续集成和部署
-
监控、日志记录和诊断
-
编写和开发
-
框架
-
从可简化无服务器应用程序开发和部署的各种 AWS 框架、开源框架以及第三方 Web 框架中进行选择。这些常用框架支持多种语言。
- AWS Serverless Application Model (AWS SAM) 是一种用于构建无服务器应用程序的开源框架。它提供了表示函数、API、数据库和事件源映射的简写语法。
- AWS Cloud Development Kit (AWS CDK) 是一种开源软件开发框架,可让您使用熟悉的编程语言来定义云应用程序资源。
- 无服务器框架 - 无服务器框架由一个开源 CLI 和一个托管控制面板组成。它们一起为您提供了完整的无服务器应用程序生命周期管理。
- serverless.tf — 一个开源框架,用于使用 Terraform 在 AWS 上开发、构建、部署和保护无服务器应用程序和基础设施。
- Chalice是在 Python 中编写无服务器应用程序的一种框架。通过它,您可以快速创建和部署使用 AWS Lambda 的应用程序。
- Arc.codes 提供了构建大规模可扩展无服务器应用所需的一切,具有低代码、清晰简洁的配置和零仪式。
- Claudia.js 可用于轻松将 Node.js 项目部署到 AWS Lambda 和 API Gateway。
-
持续集成和部署
-
您可以使用 AWS 开发人员工具和第三方工具为您的无服务器应用程序构建持续集成和持续交付 (CI/CD) 流程。
- AWS CodeCommit 是一项安全、高度可扩展的托管式源代码控制服务,可用于托管私有 Git 存储库。
- AWS CodePipeline 是一种完全托管的持续交付服务,可以帮助您实现发布管道的自动化,从而实现快速而可靠的应用程序和基础设施更新。
- AWS CodeBuild 是一项完全托管的持续集成服务,可编译源代码、运行测试以及生成可供部署的软件包。
- AWS CodeDeploy 是一项完全托管的部署服务,它可以将软件自动部署到各种计算服务,如 Amazon EC2、AWS Fargate、AWS Lambda 和本地服务器。
- AWS CodeArtifact 是一项完全托管式构件存储库服务,借助它,各种规模的组织都可以轻松安全地存储、发布和分享其软件开发过程中所使用的软件程序包。
- Stackery 是一个无服务器平台,可用于设计、开发和交付现代化应用程序。
-
监控、日志记录和诊断
-
您可以使用 AWS 服务和第三方工具监控无服务器应用程序和 AWS Lambda 函数的性能,并对其进行故障排除。
- AWS X-Ray 可以帮助开发人员分析与调试分布式生产应用程序,例如使用微服务架构构建的应用程序。
- Amazon CloudWatch 是一种面向开发运维工程师、开发人员、站点可靠性工程师 (SRE) 和 IT 经理的监控和可观测性服务。
- Dashbird — AWS Lambda 应用程序的端到端可观测性和实时错误跟踪。
- DataDog — 检测和解决您的无服务器应用程序中的性能问题。
- Lumigo — 无服务器和微服务的监控和调试平台。
- New Relic - 使用 New Relic 无服务器对 AWS Lambda 函数进行监控、可视化、问题排查和提醒。
- Splunk — 在一个平台中对您的整个堆栈进行监控、探索和问题排查。
-
编写和开发
-
您可以使用 IDE 插件在您现有的集成开发环境 (IDE) 中撰写 AWS Lambda 函数代码。
- IDE 工具包 - 在 AWS 上使用您选择的编程语言轻松开发应用程序。
- AWS SAM CLI 提供一个类似于 Lambda 的执行环境,允许您在本地构建、测试、调试和部署 SAM 模板定义的应用程序。
- AWS Cloud9 是一种基于云的集成开发环境 (IDE),您只需要一个浏览器,即可编写、运行和调试代码。它包括一个代码编辑器、调试程序和终端。
- PowerShell 工具使开发人员和管理人员可以在 PowerShell 脚本环境中管理他们的 AWS 服务和资源。
文档
Amazon API Gateway
Amazon API Gateway 是一种完全托管的服务,可以帮助开发人员轻松创建、发布、维护、监控和保护任意规模的 API。
Amazon EventBridge
Amazon EventBridge 是一种无服务器事件总线,支持您使用自己的应用程序、软件即服务 (SaaS) 应用程序和 AWS 服务的数据轻松将应用程序连接到一起。
Amazon Simple Notification Service (Amazon SNS)
Amazon SNS 是一种高度可用、持久、安全且完全托管的发布/订阅消息收发服务,可以让您轻松解耦微服务、分布式系统和无服务器应用程序。
Amazon Simple Queue Service (Amazon SQS)
Amazon SQS 是一种完全托管的消息队列服务,让您可以解耦和扩展微服务、分布式系统和无服务器应用程序。
AWS Fargate
AWS Fargate 是一种适用于 Amazon ECS 的计算引擎,让您无需管理服务器或集群即可运行容器。
AWS Lambda
AWS Lambda 使您几乎可以为任何类型的应用程序或后端服务运行代码,而且完全无需管理。
AWS Serverless Application Model (AWS SAM)
AWS SAM 是一种使用简洁语法、用于构建无服务器应用程序的开源框架。
AWS Serverless Application Repository (AWS SAR)
AWS SAR 使团队、组织和各个开发人员能够存储和共享可重用的应用程序,并轻松组装和部署无服务器架构。
AWS Step Functions
AWS Step Functions 让您将多个 AWS 服务协调为无服务器工作流,以便您可以快速构建和更新应用程序。
教程
构建简单的无服务器 Web 应用程序
使用 AWS Lambda、Amazon API Gateway、Amazon S3、Amazon DynamoDB 和 Amazon Cognito 构建一个允许用户请求乘坐 unicorn 车辆的无服务器 Web 应用程序。
构建动态、多服务的 Web 应用程序
使用 Amazon Cognito、Amazon Kinesis、AWS Lambda、AWS Fargate、AWS CodeCommit 等等部署 Web 应用程序,连接到数据库和分析用户行为。
在 Twitch 上观看实时编码教程
观看我们的“基于无服务器构建”广播,并使用 AWS Lambda、AWS AppSync、Amazon SQS 等等构建一个无服务器航空公司预订应用程序。
入门博客系列
无服务器入门:设置
构建和部署使用 GitHub 的 Webhook 集成功能的简单应用程序,以在启动存储库时通过 Slack 通知用户。
无服务器入门:编写业务逻辑
了解如何使用 AWS Lambda 函数为无服务器应用程序保留业务逻辑。
无服务器入门:为您的业务逻辑创建 API
本博文展示了如何使用 Amazon API Gateway 为您的无服务器应用程序的业务逻辑创建前门。
无服务器入门:本地开发人员工作流程
设置无服务器开发人员工作流程,使您能够快速地测试和迭代业务逻辑,同时仍能与云服务交互。
无服务器入门:开发人员沙盒账户
学习如何设置一个 AWS 沙盒开发人员账户,您可以使用该账户访问与函数交互的 AWS 资源,以及测试整个应用程序的行为。
客户构建的工具
访问由领先公司提供的开源工具,这些公司构建了无服务器框架、应用程序和解决方案来改进其处理数据、执行负载测试、跨团队管理无服务器项目以及加速内部无服务器采用的方式。如需了解更多用于无服务器应用程序的开源和第三方开发人员工具,请访问我们的无服务器开发人员工具页面。
StreamAlert 是一种无服务器的实时数据分析框架,使您能够提取、分析来自不同来源的数据,并依据您定义的警报逻辑发出相关警报。
Cloud Custodian 是用于管理公有云账户和资源的规则引擎。它允许用户定义策略以启用良好托管的云基础设施,并将临时脚本整合到轻型且灵活的工具中。
Odin 允许您将 12 要素应用程序部署到 AWS。Fenrir 是一种安全的 AWS SAM 部署器,可帮助管理无服务器项目并在您的团队和组织中扩展无服务器架构。
ShadowReader 是一款负载测试工具,通过从访问日志中收集流量模式,它可将生产流量重放到您选择的目标。
Bender 提供了可扩展的 Java 框架,用于在 AWS Lambda 上创建无服务器 ETL 函数。Bender 提供了为 ETL 进程的各个方面构建模块所必需的接口。
Jazz 是一种无服务器开发平台,可加速无服务器技术在企业内的采用。Jazz 可以帮助构建函数、API 和静态网站,并且默认情况下随附 CI/CD。
白皮书
通过 AWS 无服务器平台提供的 IT 敏捷性和业务可扩展性创造价值
IDC 揭示了 11 家 AWS 客户如何通过无服务器服务将五年运维成本降低 60%,并使计算部署速度提高 89%。
参考架构
使用 AWS Lambda 的移动后端
为移动应用程序构建一个允许用户上传照片和笔记的无服务器后端。
图像识别处理
使用 AWS Step Functions 编排一个能够处理照片和提取元数据的无服务器工作流。
实时数据流处理
为应用程序活动跟踪、订单处理、单击流分析等处理实时流数据。
运行无服务器 MapReduce 作业
构建一个可处理存储在 Amazon S3 中的数据的 MapReduce 框架(和经济高效管道)
了解有关无服务器计算的更多信息。