AWS Lambda
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Lambda 执行环境和可用库

底层 AWS Lambda 执行环境包括以下软件和库。

  • 操作系统 – Amazon Linux

  • AMI – amzn-ami-hvm-2017.03.1.20170812-x86_64-gp2

  • Linux 内核 – 4.14.77-70.59.amzn1.x86_64

  • AWS SDK for JavaScript – 2.290.0

  • 适用于 Python 的 开发工具包 (Boto3) – 3-1.7.74 botocore-1.10.74

并非所有运行时语言都适用于 Amazon Linux AMI 或其 yum 存储库。如果您使用 Amazon Linux 进行开发,则可能需要从其各自的公共站点手动下载并安装它们。

适用于 Lambda 函数的环境变量

下面是 AWS Lambda 执行环境中适用于 Lambda 函数的环境变量列表。下表表明由 AWS Lambda 预留、无法更改,以及可在创建 Lambda 函数时设置的环境变量。有关将环境变量用于 Lambda 函数的更多信息,请参阅 AWS Lambda 环境变量

Lambda 环境变量

密钥 预留

_HANDLER

函数上配置的处理程序位置。

AWS_REGION

执行 Lambda 函数的 AWS 区域。

AWS_EXECUTION_ENV

运行时标识符,前缀为 AWS_Lambda_。例如:AWS_Lambda_java8

AWS_LAMBDA_FUNCTION_NAME

参数的名称。

AWS_LAMBDA_FUNCTION_MEMORY_SIZE

对函数可用的内存量(以 MB 为单位)。

AWS_LAMBDA_FUNCTION_VERSION

正在执行的函数的版本。

AWS_LAMBDA_LOG_GROUP_NAME

AWS_LAMBDA_LOG_STREAM_NAME

函数的 Amazon CloudWatch Logs 组和流的名称。

AWS_ACCESS_KEY_ID

AWS_SECRET_ACCESS_KEY

AWS_SESSION_TOKEN

从函数的执行角色中获取的访问密钥。

LANG

en_US.UTF-8。这是运行时的区域设置。

TZ

环境的时区 (UTC)。执行环境使用 NTP 同步系统时钟。

LAMBDA_TASK_ROOT

您的 Lambda 函数代码的路径。

LAMBDA_RUNTIME_DIR

运行时库的路径。

PATH

/usr/local/bin:/usr/bin/:/bin:/opt/bin

LD_LIBRARY_PATH

/lib64:/usr/lib64:$LAMBDA_RUNTIME_DIR:$LAMBDA_RUNTIME_DIR/lib:$LAMBDA_TASK_ROOT:$LAMBDA_TASK_ROOT/lib:/opt/lib

NODE_PATH

(Node.js) /opt/nodejs/node8/node_modules/:/opt/nodejs/node_modules:$LAMBDA_RUNTIME_DIR/node_modules

PYTHONPATH

(Python) $LAMBDA_RUNTIME_DIR

GEM_PATH

(Ruby) $LAMBDA_TASK_ROOT/vendor/bundle/ruby/2.5.0:/opt/ruby/gems/2.5.0

AWS_LAMBDA_RUNTIME_API

(自定义运行时)运行时 API 的主机和端口。