spring-cloud-alibaba学习二(利用restTemplate和Feign实现负载均衡)

项目结构

继续在使用上一篇文章项目的基础上,再新建一个模块:server_provider2。
项目结构与内容和server_provider一样,只需要改一下该项目端口。如下图:
在这里插入图片描述
然后检查一下,是否在server_consumer中注入restTemplate的地方是否使用了@LoadBalanced

	//添加 @LoadBlanced 注解,使得 RestTemplate 接入 Ribbon,使得利用restTemplate能否实现负载均衡
    @Bean
    @LoadBalanced
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

为了能够明显看到负载均衡效果,我们修改一下server_provider的HelloController.java

@RestController
public class HelloController {

    @RequestMapping("/hello/{msg}")
    public String hello(@PathVariable String msg) {
        return msg + ",进来了!请坐请坐,这里是9000";
    }
}

修改server_provider1的HelloController.java

@RestController
public class HelloController {

    @RequestMapping("/hello/{msg}")
    public String hello(@PathVariable String msg) {
        return msg + ",进来了!请坐请坐,这里是9002";
    }
}

接下来依次启动server_provider,server-provider2,server_consumer。
然后分别访问
http://localhost:9001/hello-rest/汤姆猫
会在页面交替显示:
汤姆猫,你好,进来了!请坐请坐,这里是9000
或者
汤姆猫,你好,进来了!请坐请坐,这里是9002
feign框架不需要修改任何东西,就能直接实现负载均衡。
多次访问http://localhost:9001/hello-feign/汤姆猫,也会交替显示
汤姆猫, 我也好,进来了!请坐请坐,这里是9002
或者
汤姆猫, 我也好,进来了!请坐请坐,这里是9000

发布了33 篇原创文章 · 获赞 24 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/Myc_CSDN/article/details/99624002