什么是 AWS Lambda? - AWS Lambda

什么是 AWS Lambda?

AWS Lambda 是一种无需管理服务器即可运行代码的计算服务。您的代码以按使用量付费的定价方式运行,并自动纵向扩展和缩减。要开始使用,请参阅 创建第一个函数

您可以将 Lambda 用于:

  • 流处理:处理实时数据流以进行分析和监控。有关详细信息,请参阅 Kinesis Data Streams

  • Web 应用程序:构建可根据需求自动调整的可扩展 Web 应用。

  • 移动后端:为移动和 Web 应用程序创建安全的 API 后端。

  • IoT 后端:处理 Web、移动、IoT 和第三方 API 请求。有关详细信息,请参阅 IoT

  • 文件处理:上传到 Amazon Simple Storage Service 时自动处理文件。有关详细信息,请参阅文件处理示例

  • 数据库操作和集成示例:响应数据库更改并自动化数据工作流。有关详细信息,请参阅数据库示例

  • 计划和定期任务:使用 EventBridge 定期运行自动化操作。有关详细信息,请参阅计划任务示例

有关定价信息,请参阅 AWS Lambda 定价

Lambda 的工作原理

使用 Lambda 时,您只负责您的代码。Lambda 在高可用性计算基础设施上运行代码,管理所有计算资源,其中包括服务器和操作系统维护、容量预置、自动扩缩和日志记录。

由于 Lambda 是一种事件驱动的无服务器计算服务,它使用的编程范式不同于传统 Web 应用程序。以下模型说明了 Lambda 的工作原理:

  1. Lambda 函数中编写和组织代码,这些函数是您用于创建 Lambda 应用程序的基本构建块。

  2. 您可以通过 Lambda 权限控制安全性和访问权限,使用执行角色来管理您的函数可以与哪些 AWS 服务交互,以及哪些资源策略可以与您的代码交互。

  3. 事件源和 AWS 服务触发您的 Lambda 函数,并以 JSON 格式传递事件数据,供您的函数处理(这包括事件源映射)。

  4. Lambda 在打包您的运行时、层和扩展的执行环境中使用特定于语言的运行时(如 Node.js 和 Python)运行您的代码

提示

要了解如何构建无服务器解决方案,请查看无服务器开发人员指南

主要特征

配置、控制和部署安全的应用程序:

  • 环境变量无需部署新代码即可修改应用程序行为。

  • 版本安全地测试新功能,同时保持稳定的生产环境。

  • Lambda 层通过在多个函数之间共享通用组件来优化代码重用和维护。

  • 代码签名通过确保只有批准的代码才能进入生产系统来强制执行安全合规性。

扩展并可靠地执行:

  • 并发和扩展控制精确管理流量高峰期间的应用程序响应能力和资源利用率。

  • Lambda SnapStart 显著缩短冷启动时间。Lambda SnapStart 可以提供低至次秒级的启动性能,通常无需更改函数代码。

  • 响应流式处理通过逐步提供大量有效载荷进行实时处理来优化函数性能。

  • 容器映像使用容器工作流打包具有复杂依赖项的函数。

无缝连接和集成:

  • VPC 网络保护敏感资源和内部服务。

  • 文件系统集成,可共享持久数据并管理跨函数调用的状态操作。

  • 函数 URL 无需额外服务即可创建面向公众的 API 和端点。

  • Lambda 扩展通过监控、安全和操作工具增强了功能。

相关信息