Sprig重试机制 Spring-Retry

什么时候需要用到重试?

  • 在实际中,有一些场景比如,通讯失败、获取锁失败、网络波动等原因造成程序异常,但是在重处理之后会成功。
    以下是基于Spring Boot中的配置进行编写。

开发步骤

一、在启动类上(Application)添加@EnableRetry注解

二、在需要重试方法上添加@Retryable注解

@Retryable(value = { DataNotFoundException.class }, maxAttempts = 4, backoff = @Backoff(delay = 3000L, multiplier = 1))
public void testRetry() {
	System.out.println("retry start");
	throw new DataNotFoundException();
}
  • value 指定失败重试的异常类型
  • include:和value一样,默认空,当exclude也为空时,所有异常都重试
  • exclude:指定异常不重试,默认空,当include也为空时,所有异常都重试
  • maxAttempts: 重试次数,默认是3
  • backoff:重试补偿机制,默认没有
    @Backoff
  • delay:指定延迟后重试
  • multiplier:指定延迟的倍数,比如delay=5000l
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值