SpringCloud(七)超时、重试
2024-10-09 01:33:16
一、Ribbon(单独配置)
可以通过ribbon.xx来进行全局配置。也可以通过服务名.ribbon.xx来对指定服务配置
全局配置:
ribbon:
ConnectTimeout: 3000 #连接超时时间(ms)
ReadTimeout: 3000 #通信超时时间(ms)
MaxAutoRetries: 1 #同一台实例最大重试次数,不包括首次调用
MaxAutoRetriesNextServer: 1 #重试负载均衡其他的实例最大重试次数,不包括首次调用
OkToRetryOnAllOperations: false #是否所有操作都重试
服务配置:
#某个服务设置
mhb-cloud-zuul-consumer
ribbon:
ConnectTimeout: 3000 #连接超时时间(ms)
ReadTimeout: 3000 #通信超时时间(ms)
MaxAutoRetries: 1 #同一台实例最大重试次数,不包括首次调用
MaxAutoRetriesNextServer: 1 #重试负载均衡其他的实例最大重试次数,不包括首次调用
OkToRetryOnAllOperations: false #是否所有操作都重试
根据上面的参数计算重试的次数 -- 重试3次 则一共产生4次调用:
MaxAutoRetries+MaxAutoRetriesNextServer+(MaxAutoRetries *MaxAutoRetriesNextServer)
二、Ribbon+Feign
Feign默认支持Ribbon;Ribbon的重试机制和Feign的重试机制有冲突,所以源码中默认关闭Feign的重试机制,使用Ribbon的重试机制
二、Ribbon+Feign+Hystrix
设置Hystrix的超时时间,要先设置Ribbon的超时时间
Hystrix超时时间的计算方式为:
(1 + MaxAutoRetries + MaxAutoRetriesNextServer) * ReadTimeout
ribbon:
ConnectTimeout: 3000 #连接超时时间(ms)
ReadTimeout: 3000 #通信超时时间(ms)
MaxAutoRetries: 1 #同一台实例最大重试次数,不包括首次调用
MaxAutoRetriesNextServer: 1 #重试负载均衡其他的实例最大重试次数,不包括首次调用
OkToRetryOnAllOperations: false #是否所有操作都重试
#hystrix的超时时间
hystrix:
command:
default:
execution:
timeout:
enabled: true
isolation:
thread:
timeoutInMilliseconds: 9000 #超时时间(ms)
最新文章
- 使用Github进行合作开发
- 年底了,特贡献一些C#有意思的算法题
- XtraFinder到底好在哪里(标签、隐藏文件、路径拷贝与显示、从这里启动)
- git 教程(1)--安装git
- 将XML文件中的内容转换为Json对象
- 爱拼图游戏android源码完整版
- Oracle数据迁移至MySQL
- 设置Eclipse智能提示
- Entity Framework 6.1-Model First
- javascript-01
- Core Bluetooth 概述 【官方文档翻译】
- Hibernate学习
- upload 简单的封装
- JS判断终端
- UEFI+GPT安装WIN7,WIN8/WIN10下安装WIN7双系统
- Netty 5 io.netty.util.IllegalReferenceCountException 异常
- 关于PHP中拿到MySQL中数据中的中文在网页上显示为?的解决办法!
- git push 时发生 error: failed to push some refs to 错误 (解决办法)
- MYSQL事务处理失效原因
- 在win8 App中,StorageFile比Path更好用
热门文章
- c++第一个程序测试-----c++每日笔记!
- python之装饰器的进阶
- Android | 教你如何用华为HMS MLKit 图像分割 SDK开发一个证件照DIY小程序
- 服务器上安装.NET Framework 3.5 sp1
- 商品spu 和 sku的关系
- XHTML 简介
- .NET(C#)实现桌面背景切换(控制台应用程序,windows服务版的未实现成功)
- springboot 切面添加日志功能
- 浅谈动态规划(Dynamic Programming)
- Java第二十四天,线程安全