在上一节中,我们讨论了feign+hystrix在项目开发中,除了考虑正常的调用之外,负载均衡和故障转移也是关注的重点,这也是feign + ribbon+hystrix的优势所在,本节我们就讨论一下在feign中使用ribbon,有两种方式

一、通过在配置文件application.yml配置,开启ribbon,并指定调用生产者相对上一节可以不做任何更改,可以看项目(microservice-consumer-movie-feign-with-hystrix-hystrix-factory)

项目结构如下:

SpringCloud分布式微服务b2b2c电子商务docker-feign-hystrix-rib_第1张图片

application.yml配置文件:

spring:
  application:
    name: microservice-consumer-movie-feign-with-hystrix-hystrix-factory
server:
  port: 7901
eureka:
  client:
    healthcheck:
      enabled: true
    serviceUrl:
      defaultZone: http://jacky:admin@peer1:8761/eureka/,http://jacky:admin@peer2:8762/eureka/,http://jacky:admin@peer3:8763/eureka/
  instance:
    prefer-ip-address: true
microservice-provider-user:
  ribbon:
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: 5000

二、通过通过写配置类,在启动类中指定ribbon配置类即可,可以看项目(microservice-consumer-movie-ribbon)了解springcloud架构可以加求求:三五三六二四七二五九