码迷,mamicode.com
首页 > 其他好文 > 详细

负责均衡-手写简单的负载均衡和ribbon介绍

时间:2020-02-18 20:07:33      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:开源   集成   简单的   template   介绍   作用   请求   ble   temp   

服务器负载均衡就是

nignx

客户端负载均衡

客户端负责,负载均衡规则,从服务列表里面选择具体的服务实例。

从nacos服务发现组件上,利用简单的随机负载均衡算法来获取服务地址。

List<ServiceInstance> instances = discoveryClient.getInstances("pay");
List<String> targerUrls = instances.stream().map(instance->instance.getUri().toString()+"/test")
.collect(Collectors.toList());
int i= ThreadLocalRandom.current().nextInt(targerUrls.size());
log.info("请求目标地址:"+targerUrls.get(i));
return restTemplate.getForObject(targerUrls.get(i),String.class);

使用ribbon实现负载均衡
ribbon是一个netflix开源的实现负载均衡的组件,
集成方式
@Bean
@LoadBalanced
public RestTemplate restTemplate(){
return new RestTemplate();
}
return restTemplate.getForObject("http://pay/test",String.class);
pay是服务名称

接口                             作用                             默认值                                    
IClientConfig 读取配置 DefaultClientConfigImpl
IRule    
IPing    
ServerList<Server>    
ServerList<>    

负责均衡-手写简单的负载均衡和ribbon介绍

标签:开源   集成   简单的   template   介绍   作用   请求   ble   temp   

原文地址:https://www.cnblogs.com/xiaofeiyang/p/12327623.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!