SpringCloud- 负载均衡(ribbon)

1.nginx实现负载均衡原理:

 能实现负载均衡的工具有nginx lvs F5(硬件)

2.SpringCloud实现负载均衡原理

3.搭建ribbon实现负载均衡demo(如果没项目可以从eureka demo那里获取)

 步骤一:pom文件导入所需要的依赖

 

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>

 

步骤二:加上开启负载均衡的注解

package com;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;

@SpringBootApplication
@EnableEurekaServer
public class OrderApp {

    public static void main(String[] args) {
        SpringApplication.run(OrderApp.class, args);
    }

    @Bean
    @LoadBalanced//这个注解的作用就是允许Rest调用开启负载均衡
    RestTemplate restTemplate() {
        return new RestTemplate();
    }
}

步骤三:测试负载均衡生效

从截图中可以看出来,此时的eureka中心有两个 service-member 服务

 

请求地址:http://127.0.0.1:8764/getOrderByUserList

结果显示:

ps:负载均衡的配置应该是在消费接口这边,因为是消费接口调用接口提供者!

posted on 2019-05-10 16:25  年少不知愁  阅读(295)  评论(0编辑  收藏  举报