为什么AWS Lambda更新状态显示“进行中”“创建中”而非成功提示?
核心原因
这个现象是AWS Lambda服务端的正常逻辑变更,并非你的操作错误或者CLI版本问题。
AWS在2021年调整了Lambda函数代码更新的响应逻辑,将原本默认同步等待更新完成后返回结果的机制,改为了提交更新请求后立刻返回异步处理状态,所以首次响应会出现LastUpdateStatus: InProgress以及对应的创建中提示,并非更新失败。
你观察到函数调用已经生效是正常情况:绝大多数场景下,小体积的代码包更新后台处理耗时极短,你发起调用时后台已经完成了更新,只有GB级超大代码包、绑定多层Lambda Layer的函数更新可能会存在1-10秒的延迟。
潜在影响与解决方案
- 普通手动更新场景:完全无影响,无需额外操作
- 自动化CI/CD场景:如果你的流程需要确保更新完成后再执行后续操作(比如发布版本、配置别名流量切换),可以在
update-function-code命令后追加等待命令:
aws lambda wait function-updated --function-name myfunctionname
该命令会自动轮询函数状态,直到更新完成、状态变为Successful后才会退出,保证后续操作基于最新版本的函数执行。
补充说明
你使用的AWS CLI 2.2.16版本刚好对应Lambda该次逻辑变更的发布窗口,所以会出现和旧版本操作体验不一致的情况,不属于BUG。
内容的提问来源于stack exchange,提问作者5260452
相关产品推荐
相关产品推荐

