本文介绍函数在同步调用和异步调用执行失败时,如何进行重试完成函数调用。
重试机制
函数未成功执行的重试机制因调用方式而异。
同步调用失败
您需要自行重试。
异步调用失败
函数计算会自动重试的情况如下表所示。
执行失败原因
状态码
服务器端行为
是否计费
解决方案
函数计算的错误类型为
HandledInvocationError
和UnhandledInvocationError
。关于函数计算错误类型的更多信息,请参见基础信息。200
默认重试3次,或根据异步设置次数重试。
按照调用次数计费。关于计费的详细信息,请参见计费概述。
请自行排查您的代码。
函数并发执行超上限。
429
以二进制指数退避方式重试执行5小时。当您的函数执行失败后将在0.5秒后开始重试,后续重试执行的时间间隔将以二进制指数退避方式计算,即重试时间间隔为1秒、2秒、4秒、8秒等持续重试5小时。
否
单个阿里云账号(主账号)在单个地域内总实例数默认限制为100,实际数值以配额中心为准,如果您需要提高该限制,请前往配额中心申请。
系统内部错误。
500
以二进制指数退避方式重试执行5小时。当您的函数执行失败后将在0.5秒后开始重试,后续重试执行的时间间隔将以二进制指数退避方式计算,即重试时间间隔为1秒、2秒、4秒、8秒等持续重试5小时。
否
请加入钉钉用户群(钉钉群号64970014484)咨询。
函数计算资源不足。
503
以二进制指数退避方式重试执行5小时。当您的函数执行失败后将在0.5秒后开始重试,后续重试执行的时间间隔将以二进制指数退避方式计算,即重试时间间隔为1秒、2秒、4秒、8秒等持续重试5小时。
否
请加入钉钉用户群(钉钉群号64970014484)咨询。
若您在使用过程中遇到问题,请联系我们。