Spring Cloud Ribbon 客户端负载均衡器

两种方式实现默认负载均衡
第一种:使用RestTemplate

@SpringCloudApplication
public class EurekaconsumerApplication {
    /**
     * LoadBalanced 注解用于使用应用名进行查找,并负载均衡
     * @return RestTemplate
     */
    @Bean
    @LoadBalanced
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

    public static void main(String[] args) {
        SpringApplication.run(EurekaconsumerApplication.class, args);
    }
}
public String hello(String msg) {
        return restTemplate.getForObject("http://ep/hello?msg=" + msg, String.class);
    }

第二种:使用Feign

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
public class EurekaconsumerforfeignApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaconsumerforfeignApplication.class, args);
    }
}
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @author wangn
 */
@FeignClient(name = "ep")
@Component
public interface EurekaProvider {
    @GetMapping("/hello")
    String sayHello(@RequestParam("msg") String msg);
}

你可能感兴趣的:(Spring,Cloud)