SpringCloud服务间调用:负载均衡策略调整


比如我创建的一个订单服务:order-service,

要调用我的商品服务product-service里面的接口,默认使用轮询的负载均衡策略

现在我要使用随机分配,如何操作呢?

 

1.order-service的配置文件application.yml里面修改配置即可:

要指定调用的服务名称product-service

RandomRule为随机分配,更多策略参考:https://blog.csdn.net/u012702547/article/details/77978845

server:
  port: 8781


#指定注册中心地址
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/

#服务的名称
spring:
  application:
    name: order-service

#自定义负载均衡策略,随机分配
#调用的服务名称为product-service(怕名字错误可直接看注册中心名字)
product-service:
  ribbon:
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule

 

2.自定义负载均衡策略官方文档:http://cloud.spring.io/spring-cloud-static/Finchley.RELEASE/single/spring-cloud.html#_customizing_the_ribbon_client_by_setting_properties

3.注意:

  策略选择:
        1、如果每个机器配置一样,则建议不修改策略 (推荐)
        2、如果部分机器配置强,则可以改为 WeightedResponseTimeRule

    (权重策略,服务的平均响应时间越短,权重越高,被选中的概率越高)

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM