AWS Lambda版本控制 - 如何在生产阶段中拥有两个单独的lambda别名?

时间:2017-12-28 17:52:27

标签: version-control aws-lambda versioning

我有一个移动应用程序调用AWS Lambda说例如'你好'。假设'hello'lambda函数发生了变化,并将其发布到新版本2.但是这个lambda函数将由移动应用程序版本2调用,并且可供更新应用程序的用户使用。

对于尚未更新移动应用程序的用户,必须仍然对先前版本进行lambda调用。

这与API版本非常相似,通常通过在API签名中添加'/ v1 /'等来表示当前公开可用的API版本。

我如何拥有同一个lambda的两个版本以支持向后兼容性?它是通过让它们指向2个不同的别名吗?

对于那些需要复习Lambda版本控制和别名的人来说,这里是 -

  • Lambda版本就像git提交 - 它们是项目历史的快照。每个版本都有一个作为ID的编号,从1开始并递增。

  • 请注意,如果您使用名为“$ LATEST”的特殊版本,则只能发布版本。这是所有Lambda函数的默认版本。这个版本$ LATEST的行为类似于git的临时区域 - 你在那里进行更改,当你发布一个版本时,它会接受$ LATEST中的任何内容并将其保存为新版本 - 就像git commit一样。

  • 别名只是指向版本的指针。作为一个比喻,想一想如何指向不同的服务器进行开发,升级或生产。

  • 发布新版本后,您可以将别名附加到客户端代码将引用的版本。

1 个答案:

答案 0 :(得分:0)

您可以使用版本号访问以前版本的Lambda代码。

假设您的Lambda函数版本1,2,3,4 ..“ Hello ”。使用

访问修订版(或提交版)'3'
Hello:3

您可以使用

访问最新版本
Hello:$LATEST

或者仅仅通过函数名称本身

Hello