一、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)

最新文章

  1. 使用Github进行合作开发
  2. 年底了,特贡献一些C#有意思的算法题
  3. XtraFinder到底好在哪里(标签、隐藏文件、路径拷贝与显示、从这里启动)
  4. git 教程(1)--安装git
  5. 将XML文件中的内容转换为Json对象
  6. 爱拼图游戏android源码完整版
  7. Oracle数据迁移至MySQL
  8. 设置Eclipse智能提示
  9. Entity Framework 6.1-Model First
  10. javascript-01
  11. Core Bluetooth 概述 【官方文档翻译】
  12. Hibernate学习
  13. upload 简单的封装
  14. JS判断终端
  15. UEFI+GPT安装WIN7,WIN8/WIN10下安装WIN7双系统
  16. Netty 5 io.netty.util.IllegalReferenceCountException 异常
  17. 关于PHP中拿到MySQL中数据中的中文在网页上显示为?的解决办法!
  18. git push 时发生 error: failed to push some refs to 错误 (解决办法)
  19. MYSQL事务处理失效原因
  20. 在win8 App中,StorageFile比Path更好用

热门文章

  1. c++第一个程序测试-----c++每日笔记!
  2. python之装饰器的进阶
  3. Android | 教你如何用华为HMS MLKit 图像分割 SDK开发一个证件照DIY小程序
  4. 服务器上安装.NET Framework 3.5 sp1
  5. 商品spu 和 sku的关系
  6. XHTML 简介
  7. .NET(C#)实现桌面背景切换(控制台应用程序,windows服务版的未实现成功)
  8. springboot 切面添加日志功能
  9. 浅谈动态规划(Dynamic Programming)
  10. Java第二十四天,线程安全