php数据库连接重试机制,SpringCloud重试机制配置详解
首先声明一点,这里的重试并不是报错以后的重试,而是负载均衡客户端发现远程请求实例不可到达后,去重试其他实例。
@Bean
@LoadBalanced
RestTemplate restTemplate() {
HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory();
httpRequestFactory.setReadTimeout(5000);
httpRequestFactory.setConnectTimeout(5000);
return new RestTemplate(httpRequestFactory);
}
feign重试机制
feign默认是通过自己包下的Retryer进行重试配置,默认是5次
package feign;
import static java.util.concurrent.TimeUnit.SECONDS;
/**
* Cloned for each invocation to {@link Client#execute(Request, feign.Request.Options)}.
* Implementations may keep state to determine if retry operations should continue or not.
*/
public interface Retryer extends Cloneable {
/**
* if retry is permitted, return (possibly after sleeping). Otherwise propagate the exception.
*/
void continueOrPropagate(RetryableException e);
Retryer clone();
public static class Default implements Retryer {
private final int maxAttempts;
private final long period;
private final long maxPeriod;
int attempt;
long sleptForMillis;
public Default() {
this(100, SECONDS.toMillis(1), 5);
}
public Default(long period, long maxPeriod, int maxAttempts) {
this.period = period;
this.maxPeriod = maxPeriod;
this.maxAttempts = maxAttempts;
this.attempt = 1;
}
feign取消重试
@Bean
Retryer feignRetryer() {
return Retryer.NEVER_RETRY;
}
feign请求超时设置
@Bean
Request.Options requestOptions(ConfigurableEnvironment env){
int ribbonReadTimeout = env.getProperty("ribbon.ReadTimeout", int.class, 6000);
int ribbonConnectionTimeout = env.getProperty("ribbon.ConnectTimeout", int.class, 3000);
return new Request.Options(ribbonConnectionTimeout, ribbonReadTimeout);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
php数据库连接重试机制,SpringCloud重试机制配置详解相关推荐
- GRE配置详解和路由黑洞及检测机制
GRE配置详解和路由黑洞及检测机制 基本路由配置先省略,直接上GRE配置: 合肥: int tunnel 0/0/1 //创建隧道 ip add 192.168.13.1 24 //给隧道口ip地址, ...
- [转]阿里巴巴数据库连接池 druid配置详解
一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...
- Android 事件分发机制分析及源码详解
Android 事件分发机制分析及源码详解 文章目录 Android 事件分发机制分析及源码详解 事件的定义 事件分发序列模型 分发序列 分发模型 事件分发对象及相关方法 源码分析 事件分发总结 一般 ...
- Flink/Blink 原理漫谈(六)容错机制(fault tolerance)详解
系列文章目录 Flink/Blink 原理漫谈(零)运行时的组件 Flink/Blink 原理漫谈(一)时间,watermark详解 Flink/Blink 原理漫谈(二)流表对偶性和distinct ...
- 我的世界服务器怎么弄自动钓鱼,我的世界自动钓鱼机制作教程 图文步骤详解...
之前有玩家跟我问过自动钓鱼机的事,所以这里就跟大家分享一个简易的自动钓鱼机,全自动的钓鱼机我也不知道怎么做,网上的很多教程也是看不懂,所以这里就发一个肯定能用的自动钓鱼机. 我的世界自动钓鱼机红石制作 ...
- openfalcon架构及相关服务配置详解
一:openfalcon组件 1.falcon-agent 数据采集组件 agent内置了一个http接口,会自动采集预先定义的各种采集项,每隔60秒,push到transfer. 2.transfe ...
- application.yaml配置详解
application.yaml配置详解 application.yaml配置主要分为三部分 server 服务端配置项 client 客户端配置项 instance 实例配置项 服务端配置项 ser ...
- 【深入理解Hadoop原理】Hadoop 参数配置 详解
Hadoop 参数配置 详解 一.常用端口 组件 节点 默认端口 配置 用途说明 HDFS DataNode 50010 dfs.datanode.address datanode服务端口,用于数据传 ...
- keepalived介绍、安装及配置详解
文章目录 keepalived简介 keeplived和LVS关系 VRRP工作原理 keepalived体系结构及工作原理 keepalived安装 keepalived配置详解 keepalive ...
- SpringBoot的配置详解application
SpringBoot的配置文件application有两种文件格式,两种配置的内容是一致的,只是格式不一致. 1.application.properties 2.application.yml或者a ...
最新文章
- poj 1664 放苹果 DPDFS
- 计算机三四级网络技术,全国计算机等级考试四级网络技术论述题真题3
- html5把六张图片做成立方体,HTML5绘制在立方体上的几何曲线图形
- 机器学习笔记十一之降维
- 3.7-php连接MongoDB
- Python中time模块详解(转)
- 直接选择排序(Straight Selection Sort)
- mysql 数据备份 crontab
- 凯撒密码(凯撒移位)
- Pytorch 多GPU数据并行(DataParallel)
- 计量广义差分操作过程_一分钟看完计量经济学
- eda技术试卷_EDA技术试题库-试题库
- CentOS7配简单的桌面环境openbox
- 政府行业数据保护方案
- Hash表的初步认识
- 优化 | 浅谈旅行商(TSP)的七种整数规划模型
- 成都计算机考证培训机构
- Mysql统计分组后每组数据与每组数量区别
- Microsoft Visual Studio 注册码
- XAMPP简介、安转、使用