Ribbon负载均衡服务调用

1.在听周阳老师讲解时,使用Ribbon核心组件IRule时是这样用的:

  ribbon版本 :

  自定义配置类不能放在@ComponentScan所扫描的当前包下以及子包下,项目结构如下

MySelfRule.java

@Configuration
public class MySelfRule {

    @Bean
    public IRule getMyRule(){
        return new RandomRule();
    }
}

OrderMain80 .java

@EnableEurekaClient
@SpringBootApplication
@RibbonClient(name = "CLOUD-PAYMENT-SERVICE",configuration = MySelfRule.class)
public class OrderMain80 {
    public static void main(String[] args) {
        SpringApplication.run(OrderMain80.class,args);
    }
}

 

2.在将nacos注册中的时候,发现安装上面的配置不行,根据网上查找的资料将Rule组件放在@ComponentScan所扫描的当前包下以及子包下就可以了

  主启动类添加@RibbonClinet就可以了

@Configuration
public class ApplicationContextBean {
    @Bean
    @LoadBalanced
    public RestTemplate getTemplate(){
        return new RestTemplate();
    }

    @Bean
    public IRule getMyRule(){
        return new RandomRule();
    }

}
@EnableDiscoveryClient
@SpringBootApplication
@RibbonClient(name="nacos-payment-provider")
public class OrderNacosMain83 {
    public static void main(String[] args){
        SpringApplication.run(OrderNacosMain83.class,args);
    }
}

 

至于为什么会这样还没有去研究过!!!!

 

posted @ 2020-11-25 09:55  真某人  阅读(75)  评论(0编辑  收藏  举报