iteye01 阅读(40) 评论(0)

Ribbon作为后端负载均衡器,比Nginx更注重的是承担并发而不是请求分发,可以直接感知后台动态变化来指定分发策略。
需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六
它一共提供了7种负载均衡策略:



这里以随机访问策略来举个例子:

1、ribbon配置文件添加:

service-B.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RandomRule


其中service-B是我注册到Eureka的serviceID,一共起了3个示例。

2、main类注册:

@Bean
@LoadBalanced
RestTemplate restTemplate() {
return new RestTemplate();
}

@Bean
public IRule ribbonRule() {
return new RandomRule();//这里配置策略,和配置文件对应
}

一定记得加第二个注册,很多文章没有。里面配具体的策略。

3、Controller:

@RestController
public class ConsumerController {

@Autowired
private RestTemplate restTemplate;

@Autowired 
private LoadBalancerClient loadBalancerClient;

@RequestMapping(value = "/add", method = RequestMethod.GET)
public String add(@RequestParam Integer a,@RequestParam Integer b) {
this.loadBalancerClient.choose("service-B");//随机访问策略
return restTemplate.getForEntity("http://service-B/add?a="+a+"&b="+b, String.class).getBody();

}

}

java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统


发表评论
切换编辑模式