zoukankan      html  css  js  c++  java
  • 小D课堂

    笔记

    4、高级篇幅之服务间调用之负载均衡策略调整实战
        简介:实战调整默认负载均衡策略实战

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

        在配置文件yml里面,自定义负载均衡策略
            #自定义负载均衡策略
            product-service:
              ribbon:
                NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule

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

    开始

    先回顾上节课的流程

    chose方法里面有getServer方法

    getServer一层层的调用,最后返回的是loadBalancer负载均衡器的策略

    loadBalance里面有addServer增加服务的方法,chooseServer选择服务的方法

    还有获取所有的服务的列表的方法 getAllServers

    找到实现类 BaseLoadBalancer

    baseLoadBalance里面这里 rule策略的choose方法





    IRule是个接口

    策略有很多,可以选择


    默认的策略是一个轮询的方式。端口总是在轮流访问三个服务的方式

    更改策略


    官方文档地址
    http://cloud.spring.io/spring-cloud-static/Finchley.RELEASE/single/spring-cloud.html#_customizing_the_ribbon_client_by_setting_properties



    找到IRule的实现类,复制包名

    配置的是全路径包名+类名的方式

     

    验证


    在这里加断点进行测试

    访问接口

    注意这里product-service中间是横线的

    现在的模式就是随机的

    现在是随机的,并不是按照三个服务轮流的来


     

  • 相关阅读:
    架构设计的方法学 【转】
    异常处理
    Java中---HashSet中的Set()方法不能加重复值的原因,唯一性
    java中Set集合
    java中foreach语法和总结
    泛型的处理
    迭代器错误处理
    防重复提交
    mqtt安装和使用
    字符串正则替换
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11444179.html
Copyright © 2011-2022 走看看