本文介绍消息集成默认支持的重试和死信策略。
重试策略
重试策略即任务处理过程中出现失败时的重试方式,当前重试策略支持退避重试和指数衰减重试。
退避重试(默认):最大重试3次,每次重试的时间间隔为10秒到20秒之间的随机值。
指数衰减重试:最大重试176次,每次重试的时间间隔指数递增至512秒,总计重试时间为1天。每次重试的具体间隔为:1,2,4,8,...,512秒。
容错策略
容错策略即在错误发生时的处理方式,目前支持两类容错方式:
允许容错(推荐):允许异常容错,当异常发生时不会阻塞执行,超过最大重试次数后会根据配置将消息投递至死信队列或直接丢弃。
禁止容错:不允许容错,当异常发生并超过重试策略配置时会阻塞执行。任务自动切换为待启动状态。
说明
当发生无法重试的错误,例如资源信息配置错误,此时任务会被置于启动失败状态。
死信队列
死信消息队列将以任务维度为依据进行限制,当发生无法处理或者超过重试次数的情况时,会将失败的原始数据原封不动发送至消息队列,该选项默认为不启用状态。
说明
当前支持将死信发送至云消息队列 RocketMQ 版、轻量消息队列(原 MNS)、云消息队列 Kafka 版和事件总线。