阿里云函数计算(Function Compute)的重试机制是指在函数执行过程中发生错误或未成功完成时,系统自动重新尝试执行该函数的过程。具体来说:
异步调用:
同步调用:
重试策略配置:
重试范围:
取消重试:
实现机制:
总之,在函数计算中,重试机制是一个重要的容错和保障服务稳定性的功能,旨在提高系统的可用性和可靠性,确保即使在短暂故障条件下也能尽可能地完成业务逻辑处理。
当函数异步调用执行失败后,函数计算自动进行错误重试。本文介绍重试机制以及如何在函数计算控制台配置重试策略。
重试机制
对于常见错误,系统默认的重试策略如下表所示。https://help.aliyun.com/zh/fc/user-guide/retry-policy?spm=a2c4g.11186623.0.i129
函数计算的重试机制主要针对执行失败的情况,会自动进行错误重试。
函数计算(FC)的重试机制是为了确保服务的高可用性和可靠性。当函数执行失败时,FC会在0.5秒后开始重试,后续的重试时间间隔会以二进制指数退避方式增加,例如1秒、2秒、4秒、8秒等,持续重试可达5小时。对于异步触发的场景,如钉钉事件回调处理失败,FC默认会进行3次重试,但这个次数可以根据实际情况调整。
在异步调用方面,可以通过设置消息的最大存活时间和最大重试次数来自定义重试策略。消息最大存活时长可以从1到2592000秒不等,而最大重试次数也可以根据业务需求进行调整。
对于同步调用,可以在函数计算控制台上配置函数的超时时间和最大重试次数。如果函数同步调用失败,FC会自动重试,直到达到最大重试次数或者函数执行成功为止。此外,还可以通过编写代码来捕获并处理异常,在函数执行失败时进行手动重试。
综上所述,函数计算的重试机制旨在通过自动重试来应对可能的临时性故障或网络问题,从而提高函数的可靠性和执行成功率。同时,合理配置重试参数可以帮助确保在失败时能够得到适当的重试,进一步提升服务的健壮性。
根据调用方式的不同,对未成功执行的函数的重试机制不同。
同步调用:同步调用的函数执行失败系统不会进行处理。您可以自行重试。
异步调用:如果您的函数异步调用失败,以下情况函数计算会自动重试。
函数失败原因 状态码 服务器端行为 是否计费 HandledError/UnhandledError,关于错误类型请参考 文章,函数超时属于 UnhandledError 200 最多重试两次并返回 Traceback 按照调用次数计费 函数并发执行超过上限 429 以指数退避方式重试执行 5 小时 否 系统内部错误 500 以指数退避方式重试执行 5 小时 否 函数计算资源不足 503 以指数退避方式重试执行 5 小时 否
您在使用过程中遇到问题,请 联系我们。
--此回答整理自钉群“阿里函数计算官网客户”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。