57浏览

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_代码开源_B2B电商系统_B2C电商系统
 

编辑器已禁用,请先登录后再评论

共 0 个回答

按投票排序 按时间排序
页数为0!!

我来回答

我在编程中遇到了一个问题?

我要提问

社区规则

1.不允许发布任何推广信息、非IT相关问题以及没有意义的灌水贴

2.提问标题清晰明了,内容尽可能详细,通过截图和代码将问题描述清楚

3.回答需经过自己仔细思考,不一定要正确,但一定要负责任

4.使用过程中遇到问题,或者有任何意见建议,可以通过新浪微博 @程序员俱乐部 私信反馈