Ribbon入门使用
1,Ribbon是一个实现客户端负载均衡的工具.
2,Ribbon使用时不需要额外引入依赖,Nacos已经继承了Ribbon
搭建项目
使用Ribbon,首先需要搭建一个Nacos项目,一个服务消费者,两个服务提供者.
将所有服务都注册到Nacos注册中心中,其中两个服务提供者需要功能相同,注册的服务名相同,但是端口需要修改.
在消费端开启Ribbon
新建一个配置类,配置Ribbon
@Configuration
public class ConfigBean {
/**
* @LoadBalanced 添加该注解后,Ribbon 会给restTemplate 请求添加一个拦截器,
* 在拦截器中获取注册中心的服务列表,
* 并使用Ribbon内置的负载均衡算法从服务列表中选取一个服务,
* 通过注册的服务名获取IP,port
* @return
*/
@LoadBalanced//开启负载均衡
@Bean
public RestTemplate restTemplate(){
return new RestTemplate();
}
@Bean//选择Ribbon 负载均衡策略
public IRule iRule(){
return new RoundRobinRule();
}
}
IRule是Ribbon实现负载均衡策略的接口,有多种负载均衡算法的实现类(ctrl + alt + b 查看接口的实现类).
在启动类头上添加注解
@SpringBootApplication
//向注册中心注册,并获取其他服务的调用地址
@EnableDiscoveryClient
public class NacosProviderApp {
public static void main(String[] args) {
SpringApplication.run(NacosProviderApp.class,args);
<