使用Zappa更新Lambda触发UpdateFunctionConfiguration资源冲突如何解决
Zappa更新AWS Lambda触发ResourceConflictException错误解决方案
你遇到的ResourceConflictException错误是AWS Lambda的并发更新限制导致的:Lambda服务同一时间仅允许对单个函数执行一次代码或配置更新操作,上一次更新未完全完成时,新的更新请求就会被直接拒绝。
解决方法
- 优先尝试等待1~3分钟后重新执行
zappa update qa,绝大多数轻量配置、代码更新会在这个时间范围内完成,状态恢复后即可正常部署。 - 如果等待后仍报错,登录AWS控制台进入对应Lambda函数详情页,查看函数当前状态,确认所有待生效的变更都完成、函数状态显示为「已就绪」后再重试更新。
- 若函数长时间卡在更新中状态,可以先执行
zappa status qa查看当前Zappa部署的状态,确认无运行中任务后,先执行zappa undeploy qa --remove-logs=false下线现有环境,再重新执行zappa deploy qa完成部署(注意:该操作会删除现有Lambda函数,生产环境请提前备份配置和代码,确认可接受服务中断再执行)。 - 若频繁出现该错误,可在项目的
zappa_settings.json配置文件中为对应环境增加"lambda_update_timeout": 30配置项,延长Zappa等待Lambda更新生效的超时时间,避免因Zappa等待时间过短提前发起新请求触发冲突。
内容的提问来源于stack exchange,提问作者daniel____
相关产品推荐
相关产品推荐

