Amazon DynamoDB
开发人员指南 (API Version 2012-08-10)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

最佳实践

AWS Lambda 函数在容器中运行,这是与其他函数隔离的执行环境。在您首次运行某个函数时,AWS Lambda 创建新容器并开始执行该函数的代码。

Lambda 函数具有对每个调用执行一次的处理程序。该处理程序包含函数的主业务逻辑。例如,显示在 步骤 4:创建并测试 Lambda 函数 中的 Lambda 函数具有可处理 DynamoDB 流中的记录的处理程序。

您也可以提供仅运行一次的初始化代码,该代码在创建容器之后、在 AWS Lambda 首次执行处理程序之前运行。步骤 4:创建并测试 Lambda 函数 中显示的 Lambda 函数具有导入 适用于 Node.js 中 JavaScript 的 开发工具包 然后为 Amazon SNS 创建客户端的初始化代码。这些对象只应在处理程序外部定义一次。

执行函数之后,AWS Lambda 会选择为后续的函数调用重用容器。在这种情况下,您的函数处理程序可能能够重用您在初始化代码中定义的资源。(请注意,您无法控制 AWS Lambda 保留容器的时间长度,也根本无法控制是否会重用容器。)

对于使用 AWS Lambda 的 DynamoDB 触发器,我们建议:

  • AWS 服务客户端应该在初始化代码而非处理程序中实例化。这样可允许 AWS Lambda 在容器的整个生命周期中重用现有连接。

  • 通常而言,您无需明确管理连接或实施连接池,因为 AWS Lambda 将为您管理它。

有关更多信息,请参阅 AWS Lambda Developer Guide 中的使用 AWS Lambda 函数的最佳实践