使用 Go Lambda 函数的层 - AWS Lambda

使用 Go Lambda 函数的层

Lambda 层是包含补充代码或数据的 .zip 文件存档。层通常包含库依赖项、自定义运行时系统或配置文件。创建层涉及三个常见步骤:

  1. 打包层内容。此步骤需要创建 .zip 文件存档,其中包含要在函数中使用的依赖项。

  2. 在 Lambda 中创建层。

  3. 将层添加到函数。

我们不建议使用层来管理用 Go 编写的 Lambda 函数的依赖项。这是因为 Go 中的 Lambda 函数编译成单个可执行文件,您在部署函数时将其提供给 Lambda。这个可执行文件包含您编译的函数代码及其所有依赖项。使用层不仅会使此过程复杂化,还会导致冷启动时间增加,因为函数需要在初始化阶段将额外的程序集手动加载到内存中。

要在 Go 处理程序中使用外部依赖项,请直接将其包含在部署包中。这样就可以简化部署过程,还可以利用内置的 Go 编译器优化。有关如何在函数中导入和使用依赖项(如适用于 Go 的 AWS SDK)的示例,请参阅 定义采用 Go 的 Lambda 函数处理程序