guava-retrying 模块提供了一种通用方法,
可以使用Guava谓词匹配增强的特定停止、重试和异常处理功能来重试任意Java代码。
优点
Guava retryer工具与spring-retry类似,都是通过定义重试者角色来包装正常逻辑重试,但是Guava retryer有更优的策略定义,在支持重试次数和重试频度控制基础上,能够兼容支持多个异常或者自定义实体对象的重试源定义,让重试功能有更多的灵活性。
guava-retrying 模块提供了一种通用方法,
可以使用Guava谓词匹配增强的特定停止、重试和异常处理功能来重试任意Java代码。
Guava retryer工具与spring-retry类似,都是通过定义重试者角色来包装正常逻辑重试,但是Guava retryer有更优的策略定义,在支持重试次数和重试频度控制基础上,能够兼容支持多个异常或者自定义实体对象的重试源定义,让重试功能有更多的灵活性。
sisyphus 综合了 spring-retry 和 gauva-retrying 的优势,使用起来也非常灵活。
java 重试框架 sisyphus https://github.com/houbb/sisyphus 综合了 spring-retry 和 gauva-retrying 的优势,使用起来也非常灵活。
今天,让我们一起看一下西西弗斯背后的故事。
Spring Retry为Spring应用程序提供了声明性重试支持。
它用于Spring批处理、Spring集成、Apache Hadoop(等等)的Spring。
在分布式系统中,为了保证数据分布式事务的强一致性,大家在调用RPC接口或者发送MQ时,针对可能会出现网络抖动请求超时情况采取一下重试操作。
大家用的最多的重试方式就是MQ了,但是如果你的项目中没有引入MQ,那就不方便了。