您的位置:首页 > 编程语言 > Java开发

Spring cloud之三 Ribbon/Hystrix了解(feign已集成)

2019-02-25 19:27 1581 查看

底层原理和策略

feign里已经集成了ribbon,hystrix(默认采用的是线程池作为隔离策略),建议使用feign,新版本要打开Hystrix
feign:
hystrix:
enabled: true
1.普遍的有三种:轮询,加权,ip-hash,
ribbon客户端负载均衡7种负载均衡策略IRule是负责负载均衡的父接口,核心loadbalanceClient
轮询,重试策略,随机,最低并发策略,可用过滤策略,响应时间加权策略,区域权衡策略
IRule接口定义了三个方法,实现类实现choose方法加入具体策略
2.ribbon客户端会从Eureka注册中心读取服务注册信息的列表,来实现动态负载均衡
3.通过配置文件自定义Ribbon客户端
client:
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.WeightedResponseTimeRule
4.Ribbon的饥饿加载
ribbon实在请求时才去创建,可以指定客户端名称来开启饥饿加载
ribbon:
eager-load:
enabled: true
clients: client-a, client-b,client-c

Hystrix:

简单实例
第一步:导入依赖: netflix-hystrix
第二步:启动项:在启动项添加@EnableHystrix
第三步:增加降级的fallback类
@HystrixCommand(fallbackMethod=“defaultUser”)
public String getUser(String username) throw Exception{
逻辑
}
再写个defaultUser方法,用于出错时调用

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: