guava 的重试机制 guava-retrying 使用
在日常开发中,有时会遇到重试调用,可以使用 guava-retrying
引入 jar 包
<dependency><groupId>com.github.rholder</groupId><artifactId>guava-retrying</artifactId><version>2.0.0</version>
</dependency>
使用示例
Retryer<Boolean> retryer = RetryerBuilder.<Boolean>newBuilder().retryIfResult(Predicates.equalTo(false)).retryIfException().withWaitStrategy(WaitStrategies.fixedWait(1, TimeUnit.SECONDS)).withStopStrategy(StopStrategies.neverStop()).build();try {retryer.call(() -> {//call somethingHttpUtil.createRequest(Method.POST, "某某接口url").addHeaders(headers).form(formData).execute();return true;});
} catch (Exception e) {log.error("重试失败", e);
}
参考资料
- https://blog.csdn.net/wusd1256/article/details/104241544
- https://blog.csdn.net/wusd1256/article/details/104242057
- https://www.cnblogs.com/webwangbao/p/9229001.html
- https://www.cnblogs.com/liuyupen/p/13957171.html
guava 的重试机制 guava-retrying 使用相关推荐
- 使用Guava retryer优雅的实现接口重试机制
转载自: 使用Guava retrying优雅的实现接口重调机制 Guava retrying:基于 guava 的重试组件 实际项目中,为了考虑网络抖动,加锁并发冲突等场景,我们经常需要对异常操作进 ...
- Guava-retrying 重试机制
文章目录 Guava-retrying 1. 主要相关类 1.1 Attemp 类 1.2 Retryer 类 1.3 RetryListener 2. WaitStrategies 重试等待策略 2 ...
- java retry_Retry重试机制
对于重试机制有两个一个是Guava,另一个是spring的. Guava retryer工具 pom引用 com.github.rholder guava-retrying 2.0.0 测试方法 Re ...
- 使用 guava-retrying 实现灵活的重试机制
我们的后端业务系统可能会出现接口调用失败.网络拥塞超时.任务执行失败.系统错误等异常情况,需要进行重试操作.但某些场景下我们对重试有特殊要求,比如延迟重试.降频重试等,此时自己编写重试代码会很繁琐,在 ...
- 【转载】Java重试机制
重试机制在分布式系统中,或者调用外部接口中,都是十分重要的. 重试机制可以保护系统减少因网络波动.依赖服务短暂性不可用带来的影响,让系统能更稳定的运行的一种保护机制. 为了方便说明,先假设我们想要进行 ...
- java中的失败重试机制总结
应用中需要实现一个功能: 需要将数据上传到远程存储服务,同时在返回处理成功情况下做其他操作.这个功能不复杂,分为两个步骤:第一步调用远程的Rest服务上传数据后对返回的结果进行处理:第二步拿到第一步结 ...
- 层层递进打造你的重试机制
重试机制在分布式系统中,或者调用外部接口中,都是十分重要的. 重试机制可以保护系统减少因网络波动.依赖服务短暂性不可用带来的影响,让系统能更稳定的运行的一种保护机制. 为了方便说明,先假设我们想要进行 ...
- java 超时重试机制_Java之Retry重试机制详解
应用中需要实现一个功能: 需要将 常规解决方案 try- 在包装正常上传逻辑基础上,通过判断返回结果或监听异常决定是否重试,同时为了解决立即重试的无效执行(假设异常是有外部执行不稳定导致的:网络抖动) ...
- Java之Retry重试机制详解
应用中需要实现一个功能: 需要将数据上传到远程存储服务,同时在返回处理成功情况下做其他操作. 这个功能不复杂,分为两个步骤: 第一步:调用远程的Rest服务上传数据后对返回的结果进行处理: 第二步:拿 ...
- 11. kafka重试机制解读
前面对kafka的学习中已经了解到KafkaProducer通过设定参数retries,如果发送消息到broker时抛出异常,且是允许重试的异常,那么就会最大重试retries参数指定的次数. 本片文 ...
最新文章
- 自动驾驶技术的终局,可能将无限期推迟来到
- HttpRequest获取文件流,HttpResponse输出文件流
- Linux┊详解udev
- Amazon S3 设置对象的生命周期Lifecycle
- eclipse编辑js卡死解决方案
- 网页统计所用到的名词解析
- 四格漫画《MUXing》——发版后……
- Ext.Net学习笔记之动态加载TabPanel
- HDU 1016 Prime Ring Problem
- FFMpeg新旧接口之间的一些对应关系
- 双向绑定 当obj的值修改时_Vue3为什么选择Proxy做双向绑定?
- 计算机房承重载荷,机房承重标准及承重计算方法
- CMake is re-running because generate.stamp.list is missing.
- 关于excel表格直接引用和间接引用
- 8进制的乘法计算、加法计算
- 计算机网络基础——CS架构与BS架构、OSI七层协议、tcp/ip五层模型讲解
- 2cm有多长实物图_2cm 2cm有多长实物图
- IP前缀列表配置实验
- [深度学习论文笔记][Adversarial Examples] Deep Neural Networks are Easily Fooled: High Confidence Predictions
- 基于单目视觉的平面目标定位和坐标测量 (下) - 相机姿态估计和目标测量
热门文章
- 2021世界互联网大会“全体会议”发言干货都在这篇了
- 大数据体系的4个热点4个趋势,还有3个疑问
- 重磅!阿里自研RISC-V处理器玄铁910成功运行安卓10,相关代码开源
- 今天,一起吐槽容器镜像中那些让人一言难尽的事情
- 1篇文章认识ZCCT在线认证,加入千人在线学习大军领取云计算资料包!
- 九存:重新定义存储矿机
- 【VRP】基于matlab遗传算法求解多车辆路径规划问题【含Matlab源码 1249期】
- 【数字信号调制】基于matlab多进制数字频率调制(4FSK)【含Matlab源码 999期】
- 【车间调度】基于matlab遗传算法求解置换流水车间调度问题【含Matalb源码 176期】
- 【图像评价】基于matlab图像去雾质量评价【含Matlab源码 066期】