1.创建springboot工程
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
<version>1.4.5.RELEASE</version>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
2.配置服务
#端口号
server.port=8200
spring.application.name=eureka-consume
#使用ip地址注册
eureka.instance.prefer-ip-address=true
#服务注册地址
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
3.编写负载均衡配置类RibbonConfig
//负载均衡模式修改,默认为轮询模式
@Configuration
public class RibbonConfig {
@Bean
public IRule ribbonRule(){
//改为随机模式
return new RandomRule();
}
}
4.编写RestTemplateConfig配置类,生成restTemplate对象
@LoadBalanced 为负载均衡
@Configuration
public class RestTemplateConfig {
@LoadBalanced
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
5,消费服务
@RestController
public class UserController {
@Resource
RestTemplate restTemplate;
@RequestMapping("/buy")
public String buy(){
String s = restTemplate.getForObject
("http://EUREKAPROVIDE/placeOrder",String.class);
System.out.println(s);
return s;
}
}
6.成功调取了另一个工程的接口

启动器注解
@EnableDiscoveryClient
@SpringBootApplication
本文详细介绍如何在SpringBoot项目中整合Eureka,实现服务注册与发现,并通过Feign和Ribbon完成微服务间的负载均衡调用。从创建工程、配置服务、编写负载均衡配置到实现服务调用,提供了完整的步骤与代码实例。
3012

被折叠的 条评论
为什么被折叠?



