zoukankan      html  css  js  c++  java
  • Ribbon 的负载均衡策略 springCloud

    原文:https://blog.csdn.net/wo18237095579/article/details/83384134?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

    参考:https://blog.csdn.net/Jaycrees/article/details/105467629?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1

     Ribbon 的负载均衡策略

    默认为轮询策略

    全局策略设置

    增加 Ribbon 负载均衡策略配置类

    @Configuration
    public class RibbonGlobalLoadBalancingConfiguration {
        /**
         * 随机规则
         */
        @Bean
        public IRule ribbonRule() {
            return new RandomRule();
        }
    
    }
    

    基于注解的针对单个服务的 Ribbon 负载均衡策略

      这里把上一步的的全局配置给删掉。

    基于注解的针对单个服务的 Ribbon 负载均衡策略

      这里把上一步的的全局配置给删掉。

    注解方式

      增加一个针对单个服务的 Ribbon 负载聚恒策略配置类:

    @Configuration
    /** 用来标记使用的注解,方便排除或者引用 **/
    @AvoidScan
    public class RibbonRandomLoadBalancingConfiguration {
    
        @Resource
        IClientConfig clientConfig;
    
        @Bean
        public IRule ribbonRule(IClientConfig clientConfig) {
            return new RandomRule();
        }
    
    }
    • **IClientConfig:**针对客户端的配置管理器。

      在主启动类上方做针对单个服务的负载均衡策略:

    /** 配置针对单个服务的 Ribbon 负载均衡策略 **/
    @RibbonClient(
         //服务名 name
    = "demo-goods", configuration = RibbonRandomLoadBalancingConfiguration.class ) /** 此处配置根据标识 @AvoidScan 过滤掉需要单独配置的 Ribbon 负载均衡策略,不然就会作用于全局,启动就会报错 */ @ComponentScan( excludeFilters = @ComponentScan.Filter( type = FilterType.ANNOTATION, value = AvoidScan.class ) )

    基于配置文件方式:

      我个人也不太喜欢上方的那种注解方式针对单个服务的负载均衡策略,下面是配置文件的方式:

    • .ribbon.*
    • ### 针对单个服务的 Ribbon 配置
      demo-goods:
        ribbon:
          # 基于配置文件形式的 针对单个服务的 Ribbon 负载均衡策略
          NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule


     

  • 相关阅读:
    我们应该如何防范黑客的攻击? 有哪些棘手问题?
    德国网络安全公司Avira被收购,估值为1.8亿美元
    物联网会成为黑客攻击的目标,智慧城市如何才安全?
    因新型冠状病毒,笔记本电脑销售增长,人们寻求更好的设备进行远程工作
    从电脑维修工到互联网大佬,他是怎么做到的?解读郭盛华最真实的传奇生涯
    企业防御网络风险保护计划的5个步骤
    加载失败图片加样式
    请求接口无权限
    iview button根据条件 disabled可用或者不可用
    vue跨组件传值
  • 原文地址:https://www.cnblogs.com/lshan/p/13166261.html
Copyright © 2011-2022 走看看