目录
- Spring Cloud Ribbon
- 实操
Spring Cloud Ribbon
是一个基于HTTP和TCP的客户端负载均衡工具
实操
创建两个provider,并且编写两个一样的接口,再创建一个consumer去访问该接口进行轮询调用
项目结构:
provider-01与provider-02都是创建Client
模块,并且创建controller
编写接口
@RestController public class ProviderController { @GetMapping("pengke") public String pengke(){ return "我是碰磕接口2222"; } }js
@RestController public class Pro开发者_Go学习viderController { @GetMapping("pengke") public String pengke(){ return "我是碰磕接口1111"; } }
consumer02模块则是使用ribbon
进行轮询调用接口
依赖:
<!-- ribbon依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-ribbon</artifactId> <scope>2.2.9.RELEASE</scope> </dependencyjavascript>
Application
启动类中编写一个@Bean
减少多次new该对象
关键注解:@LoadBalanced
/** *编写防止多次new * loadBalanced 会呗ribbon来操作 */ @Bean @LoadBalanced public RestTemplate restTemplate(){ return new RestTemplate(); }
controller
中编写接口用于访问另外两个模块的接口
由于在启动类中编写了RestTemplate
所以通过@Autowired
注入即可
通过ribbon
实现了通过访问http://服务名/请求地址
接口实现轮询访问另外两个模块的接口!
@Autowired privatjse Res编程客栈tTemplate restTemplate; @GetMappi编程客栈ng("testRibbon") public String testRibbon(String serviceName){ String result=restTemplate.getForObject("http://"+serviceName+"/pengke",String.class); return result; }
这就是ribbon
的应用~下一篇学习Feign(它集成了ribbon)
到此这篇关于SpringCloud Ribbon负载均衡工具使用的文章就介绍到这了,更多相关SpringCloud Ribbon内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
精彩评论