Lambda 运行时 - AWS Lambda

Lambda 运行时

Lambda 通过使用运行时支持多种语言。对于定义为容器映像的函数,您可以在创建容器映像时选择运行时和 Linux 发行版。要更改运行时,您需要创建一个新的容器映像。

要将 .zip 文件存档作为部署程序包,您需要在创建函数时选择运行时。要更改运行时,您可以更新函数的配置。运行时与其中一个 Amazon Linux 发行版配对。底层执行环境提供了您可通过函数代码访问的额外的库和环境变量

Amazon Linux

Amazon Linux 2

  • 映像 – 自定义

  • Linux 内核 – 4.14.165-102.205.amzn2.x86_64

在调用您的函数时,Lambda 会尝试重新使用上一个调用中的执行环境(如果可用)。这将节省执行环境的准备时间,并可让您将数据库连接和临时文件等资源保存在执行环境中,从而使函数无需在每次运行时都创建这些资源。

运行时可以支持一种语言的单个版本、一种语言的多个版本或多种语言。特定于语言或框架版本的运行时会在版本的使用寿命结束时被弃用

Node.js 运行时
名称 标识符 适用于 JavaScript 的开发工具包 操作系统

Node.js 14

nodejs14.x

2.880.0

Amazon Linux 2

Node.js 12

nodejs12.x

2.880.0

Amazon Linux 2

Node.js 10

nodejs10.x

2.880.0

Amazon Linux 2

注意

有关 Node.js 10 的支持终止信息,请参阅 运行时支持策略

Python 运行时
名称 标识符 适用于 Python 的 AWS 开发工具包 操作系统

Python 3.8

python3.8

boto3-1.17.42 botocore-1.20.42

Amazon Linux 2

Python 3.7

python3.7

boto3-1.17.42 botocore-1.20.42

Amazon Linux

Python 3.6

python3.6

boto3-1.17.42 botocore-1.20.42

Amazon Linux

Python 2.7

python2.7

boto3-1.17.42 botocore-1.20.42

Amazon Linux

重要

Python 2.7 于 2020 年 1 月 1 日使用寿命到期。对 Python 2.7 运行时的支持(阶段 1)将于 2021 年 7 月 15 日开始结束。有关更多信息,请参阅 AWS 计算博客中的宣布在 AWS Lambda 中终止对 Python 2.7 的支持

Ruby 运行时
名称 标识符 适用于 Ruby 的开发工具包 操作系统

Ruby 2.7

ruby2.7

3.0.1

Amazon Linux 2

Ruby 2.5

ruby2.5

3.0.1

Amazon Linux

注意

有关 Ruby 2.5 的支持终止信息,请参阅 运行时支持策略

Java 运行时
名称 标识符 JDK 操作系统

Java 11

java11

amazon-corretto-11

Amazon Linux 2

Java 8

java8.al2

amazon-corretto-8

Amazon Linux 2

Java 8

java8

java-1.8.0-openjdk

Amazon Linux

Go 运行时
名称 标识符 操作系统

Go 1.x

go1.x

Amazon Linux

.NET 运行时
名称 标识符 操作系统

.NET Core 3.1

dotnetcore3.1

Amazon Linux 2

.NET Core 2.1

dotnetcore2.1

Amazon Linux

注意

有关 .NET Core 2.1 的支持终止信息,请参阅运行时支持策略

要在 Lambda 中使用其他语言,您可以实施自定义运行时。Lambda 执行环境提供运行时接口来获取调用事件并发送响应。您可以将自定义运行时与函数代码一起部署,也可以在中部署它。

自定义运行时
名称 标识符 操作系统

自定义运行时

provided.al2

Amazon Linux 2

自定义运行时

provided

Amazon Linux