【发布时间】:2017-12-01 19:30:32
【问题描述】:
如果我:
- 触发 AWS Lambda 部署/更新
- 在步骤 #1 完成之前触发对 AWS Lambda 的请求
请求是否会碰到旧的 lambda?会出错吗?
到目前为止,在我的测试中,似乎没有“停机时间”,它几乎立即将旧的换成新的——尽管新 lambda 上的第一个请求确实必须进行冷启动。
【问题讨论】:
标签: amazon-web-services aws-lambda
如果我:
请求是否会碰到旧的 lambda?会出错吗?
到目前为止,在我的测试中,似乎没有“停机时间”,它几乎立即将旧的换成新的——尽管新 lambda 上的第一个请求确实必须进行冷启动。
【问题讨论】:
标签: amazon-web-services aws-lambda
你是对的。 IIRC,每个函数调用都使用一个特定的函数 ARN,当您更新函数时它会发生变化。当您调用该函数时,您使用的是新的 ARN,它仅调用新版本。
我相信可以继续使用旧函数,显式使用旧 ARN(尽管您可能无法从 Lambda 控制台执行此操作。)
欲了解更多信息,请参阅http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
【讨论】:
使用最近在 AWS 的 re:Invent 会议上宣布的新流量转移功能,现在可以更精细地控制 lambda 函数版本之间的请求处理方式:
【讨论】: