AWS Lambda 是一项无服务器计算服务,可运行代码来响应事件并为您自动管理底层计算资源。您可以使用 AWS Lambda 通过自定义逻辑来扩展其他 AWS 服务,或创建您自己的按 AWS 规模、性能和安全性运行的后端服务。AWS Lambda 可以自动运行代码来响应多个事件,例如,通过 Amzon API Gateway 发送的 HTTP 请求、Amazon S3 存储桶中的对象修改、Amazon DynamoDB 中的表更新以及 AWS Step Functions 中的状态转换。

Lambda 在可用性高的计算基础设施上运行您的代码,执行计算资源的所有管理工作,其中包括服务器和操作系统维护、容量预配置和自动扩展、代码和安全补丁部署以及代码监控和记录。您只需要提供代码。


PAC-Q4_House-Ads_Lambda_2up

介绍 AWS Lambda 的函数

您在 AWS Lambda 上运行的代码被称为“Lambda 函数”。当您创建 Lambda 函数之后,只要一触发该函数,它就能始终立即运行起来,这与电子表格中的公式类似。每个函数中都包含您的代码以及一些相关的配置信息,包括函数名称和资源要求。Lambda 函数是“无状态的”,与底层基础设施没有密切关系,从而使 Lambda 能在需要时尽可能多地快速启动函数副本,以扩展到传入事件的速率。

当您将代码上传到 AWS Lambda 之后,您可以将您的函数与特定的 AWS 资源(例如特定的 Amazon S3 存储桶、Amazon DynamoDB 表、Amazon Kinesis 流或 Amazon SNS 通知)关联起来。然后,当资源发生改变时,Lambda 将视需要执行您的函数并管理计算资源,从而与传入请求保持联系。

关键产品功能

用自定义逻辑扩展其他 AWS 服务

AWS Lambda 可使您将自定义逻辑添加到 Amazon S3 存储桶和 Amazon DynamoDB 表之类的 AWS 资源中,从而在数据进入云中或通过云迁移时将计算应用于数据。

AWS Lambda 的入门很简单。首先,您可以通过上传您的代码 (或在 Lambda 控制台中适当构建代码) 并选择内存、超时时间和 AWS Identity and Access Management (IAM) 角色来创建函数。然后,您可以指定 AWS 资源来触发该函数,资源可以是特定的 particular Amazon S3 存储桶、Amazon DynamoDB 表或 Amazon Kinesis 流。当资源发生改变时,Lambda 将视需要执行您的函数并启动和管理计算资源,从而与传入请求保持联系。

构建自定义后端服务

您可以使用 AWS Lambda 来为您的应用程序创建新的后端服务,这些应用程序使用通过 Amazon API Gateway 构建的 Lambda API 或自定义 API 端点按需触发。通过使用 Lambda 处理自定义事件而不是在客户端上对其提供服务,您可以避免客户端平台变化、减少电池耗尽情况并启用更简单的更新。

自备代码

使用 AWS Lambda,不需要了解任何新语言、工具或框架。您可以使用任何第三方库,甚至是本机库。AWS Lambda 支持 Java、Node.js、C# 和 Python 代码,并支持未来将采用的其他语言。

完全自动化的管理

AWS Lambda 管理所有的基础设施,以将您的代码放在可用性高的容错型基础设施上运行,从而使您能够专注于构建有差别后端服务。使用 Lambda,您不必在补丁发布时更新底层操作系统,或随着使用量的增加而为调整大小或添加新服务器担心。AWS Lambda 无缝部署您的代码、执行所有的管理、维护和安全补丁操作,并通过 Amazon CloudWatch 提供内置记录和监控。

内置容错能力

Lambda 具有内置容错能力。AWS Lambda 可在各区域中跨过多个可用区维护计算容量,从而帮助保护您的代码使其免受单个机器或数据中心实施的故障。AWS Lambda 及该服务上运行的函数都提供可预测且可靠的运行性能。AWS Lambda 旨在为服务本身及其运行的函数提供高可用性。没有维护时段或计划停机时间。

自动扩展

AWS Lambda 只在需要时调用您的代码,并能自动扩展以支持传入请求的速率,无需您配置任何内容。您的代码可处理的请求数量无限制。AWS Lambda 通常在事件发生后的几毫秒内开始运行您的代码,并且由于 Lambda 可自动扩展,随着事件频率的提高,会一直保持高性能。由于您的代码是无状态的,Lambda 可以在需要时尽可能多地启动实例,而不会发生冗长的部署和配置延迟。

运行代码以响应 Amazon CloudFront 请求

借助 Lambda@Edge,AWS Lambda 可以在全球的 AWS 站点运行您的代码来响应 Amazon CloudFront 事件,例如,发往或来自来源服务器和查看器的内容请求。这样更易于以低延迟为您的最终用户分发更加丰富、更加个性化的内容。了解更多 »

编排多个函数

您可以通过使用 AWS Step Functions 构建工作流来协调多个 AWS Lambda 函数,用于复杂或长时间运行的任务。通过 Step Functions,您可以定义使用顺序、并行、分支和错误处理步骤来触发 Lambda 函数集合的工作流。借助 Step Functions 和 Lambda,您可以为应用程序和后端构建有状态、长时间运行的进程。

集成化安全模型

AWS Lambda 可使您的代码通过其内置的 AWS 开发工具包以及与 AWS Identity and Access Management (IAM) 的集成来安全访问其他 AWS 服务。默认情况下,AWS Lambda 在 VPC 中运行您的代码。您还可以选择配置 AWS Lambda 以访问您自己的 VPC 之后的数据,从而利用自定义安全组和网络访问控制列表,向 VPC 中的资源提供对 Lambda 功能的访问权限。

AWS Lambda 符合 SOCHIPAAPCIISO 的要求。有关 Lambda 认证和合规性就绪性的最新信息,请参阅范围内的全部服务

按使用费用

使用 AWS Lambda,您只需为提供的请求以及运行您的代码所需的计算时间付费。账单以 100 毫秒的增量计费,从而能经济高效且轻松地从每天几个请求自动扩展到每秒数千个请求。

灵活的资源模型

您选择您想分配到您的函数中的内存数量,然后 AWS Lambda 按比例分配 CPU 功率、网络带宽和磁盘 I/O。

详细了解 AWS Lambda 定价

访问定价页面
准备好开始使用?
注册
还有更多问题?
联系我们