首页 > 解决方案 > 配置 AWS Lambda 函数以使用最新版本的层

问题描述

我在开发应用程序中有 20 多个 lambda 函数。还有一个包含大量通用代码的 lambda 层。

一个 Lambda 函数,将它与层的特定版本挂钩,每次更新层时,它都会生成一个新版本。由于它是一个开发应用程序,我几乎每天都有一个新版本的层。这会在每天必须触及的 lambda 函数上造成混乱 - 以升级层版本。

我知道在生产中冻结 lambda 函数的代码很重要,并且必须将 lambda 函数的一个版本挂钩到层的一个版本。

但是,对于开发环境,是否可以防止每次更新图层时生成新的图层版本?或者配置 lambda 函数,让最新的 lambda 版本总是指最新的 layer 版本?

标签: amazon-web-servicesaws-lambdaaws-lambda-layers

解决方案


不幸的是,目前无法引用最新的版本,并且层版本没有别名的概念。

最好的建议是自动执行此操作,以便每当您创建新的 Lambda 层版本时,它都会更新当前包含此 Lambda 层的所有 Lambda 函数。

要创建此事件触发器,请创建一个使用其事件来侦听事件的 CloudWatch 函数PublishLayerVersion

然后让它触发一个 Lambda,该 Lambda 将为每个 Lambda 触发update-function-layers函数,以将其层替换为新层。


推荐阅读