重试和死信

本文介绍消息集成默认支持的重试和死信策略。

重试策略

重试策略即任务处理过程中出现失败时的重试方式,当前重试策略支持退避重试和指数衰减重试。

  • 退避重试(默认):最大重试3次,每次重试的时间间隔为10秒到20秒之间的随机值。

  • 指数衰减重试:最大重试176次,每次重试的时间间隔指数递增至512秒,总计重试时间为1天。每次重试的具体间隔为:1,2,4,8,...,512秒。

容错策略

容错策略即在错误发生时的处理方式,目前支持两类容错方式:

  • 允许容错(推荐):允许异常容错,当异常发生时不会阻塞执行,超过最大重试次数后会根据配置将消息投递至死信队列或直接丢弃。

  • 禁止容错:不允许容错,当异常发生并超过重试策略配置时会阻塞执行。任务自动切换为待启动状态。

说明

当发生无法重试的错误,例如资源信息配置错误,此时任务会被置于启动失败状态。

死信队列

死信消息队列将以任务维度为依据进行限制,当发生无法处理或者超过重试次数的情况时,会将失败的原始数据原封不动发送至消息队列,该选项默认为不启用状态。

说明

当前支持将死信发送至云消息队列 RocketMQ 版轻量消息队列(原 MNS)云消息队列 Kafka 版事件总线