2019独角兽企业重金招聘Python工程师标准>>>

  1. spring-retry
  2. easy-retry
  3. guava-retry

spring-retry中应该注意的东西

@EnableRetry

Retryable注解   被注解的方法发生异常时会重试

value:指定发生的异常进行重试

include:和value一样,默认空,当exclude也为空时,所有异常都重试

exclude:指定异常不重试,默认空,当include也为空时,所有异常都重试

maxAttemps:重试次数,默认3

backoff:重试补偿机制,默认没有 @Backoff注解

delay:指定延迟后重试

multiplier:指定延迟的倍数,比如delay=5000l,multiplier=2时,第一次重试为5秒后,第二次为10秒,第三次为20秒

注意:   1、使用了@Retryable的方法不能在本类被调用,不然重试机制不会生效。也就是要标记为@Service,然后在其它类使用@Autowired注入或者@Bean去实例才能生效。

2、使用了@Retryable的方法里面不能使用try...catch包裹,要在发放上抛出异常,不然不会触发。

3、在重试期间这个方法是同步的,如果使用类似Spring Cloud这种框架的熔断机制时,可以结合重试机制来重试后返回结果。

4、Spring Retry不仅能注入方式去实现,还可以通过API的方式实现,类似熔断处理的机制就基于API方式实现会比较宽松

转载于:https://my.oschina.net/iioschina/blog/2989596

java中重试的使用工具相关推荐

  1. java中常用的加密工具

    java中常用的加密工具 1. md5加密工具类 public class MD5Utils {private static final String hexDigIts[] = {"0&q ...

  2. java中常用的日期工具类

    java中常用的日期工具类 日期相关的类: package net.yto.ofclacct.core.util;import java.text.ParseException; import jav ...

  3. java中定义一个CloneUtil 工具类

    其实所有的java对象都可以具备克隆能力,只是因为在基础类Object中被设定成了一个保留方法(protected),要想真正拥有克隆的能力, 就需要实现Cloneable接口,重写clone方法.通 ...

  4. Java中常用的 JSON工具

    Spring Cloud 2.x系列之网关zuul入门(三) Spring Cloud 2.x系列之网关zuul入门(二) 本篇通过JMH来测试一下Java中几种常见的JSON解析库的性能. 每次都在 ...

  5. java中时间常用处理工具类-DateUtils

    仅供参考,收录了一些常用的java中关于时间的处理方法,希望能帮到你! import org.apache.commons.lang3.time.DateFormatUtils;import java ...

  6. Java中的常用开发工具详解

    转载:https://blog.csdn.net/han0373/article/details/79180553 Java开发人员的常用工具 java常用的开发工具.都说工欲善其事必先利其器,要想学 ...

  7. java中文件操作的工具类

    代码: package com.lky.pojo;import java.io.BufferedReader; import java.io.BufferedWriter; import java.i ...

  8. Java中操作字符串的工具类-判空、截取、格式化、转换驼峰、转集合和list、是否包含

    场景 某些常用的对字符串进行处理的方法抽离出来成工具类,方便在多处应用. 常用的操作为: 判断是否为空 截取字符串 格式化文本 字符串转set 字符串转list 下划线转驼峰命名 是否包含字符串 注: ...

  9. JAVA中实用的一个工具类--Hutool

    什么是Hutool Hutool是一个Java工具包,也就是一个工具箱,一个utils集合,它帮助我们简化每一行代码,减少每一个方法,让Java语言也可以简单粗暴.Hutool最初是作者项目中&quo ...

  10. java中inform_java11教程--jlink工具

    您可以使用该jlink工具将一组模块及其依赖项组装和优化为自定义运行时映像. 概要 jlink [options] --module-path modulepath --add-modules mod ...

最新文章

  1. redis为什么是cp_面试官:Redis怎么持久化的?如何回答持久化策略呢?
  2. [USACO]奶牛博览会(DP)
  3. 总结自己的Git常用命令
  4. ASM:《X86汇编语言-从实模式到保护模式》第10章:32位x86处理器的编程架构
  5. 五十八种网络故障及其解决办法
  6. 【前端】跨浏览器事件处理程序EventUtil.js个人注释及详解
  7. Linux下tar.xz结尾的文件的解压方法
  8. 图像特征提取与描述_角点特征02:SIFT算法+SURF算法
  9. java开发 网关_SpringCloud系列之网关(Gateway)应用篇
  10. Windows7 环境下 VS2008 C++链接错误!
  11. elasticdump安装_elasticsearch导入导出工具elasticdump安装和使用小记
  12. SQLSERVER - 资源池 ‘internal‘ 没有足够的系统内存来运行此查询。
  13. ofdm导频信道估计matlab,ofdm系统中基于导频的信道估计算法的性能分析(样例3)...
  14. android ipad 传视频播放器,三种将本地视频导入到iPad中的方法
  15. 通俗的解释docker
  16. 理解OAuth 2.0
  17. 晶体DSX321G被公认的车载晶振在无人货车上也将功能发挥的淋漓精致
  18. 养成良好的工作习惯(计划)
  19. 机器学习 K-Means(++)算法
  20. 计算机科学概论课程设计:Technology in the field of artificial intelligence

热门文章

  1. LeetCode刷题——279. 完全平方数
  2. 《Java程序员职场全攻略:从小工到专家》连载八:加入什么样的公司
  3. 海量数据挖掘MMDS week7: 局部敏感哈希LSH(进阶)
  4. docker没有下载完全_一个时代的结束:苹果正式关闭iTunes,但歌曲下载并没有完全消失...
  5. python查看函数消耗的内存_用sys.getsizeof查看对象占用内存数
  6. doc转docx文件会乱吗_【转】帮你解决docx转换为doc文档的乱码问题
  7. 力扣-116. 填充每个节点的下一个右侧节点指针
  8. 发送邮件的python脚本
  9. [转]C# 实现Jwt bearer Authentication
  10. MySQL MGR实现分析 - 成员管理与故障恢复实现