基于上个节点的demo-springcloud-service-user进行试验操作。
1.增加Ribbon的依赖
<!--增加负载均衡-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
2.增加配置文件的依赖
spring:
application:
name: demo-springcloud-service-user
eureka:
client:
service-url:
defaultZone: http://user:user@demo-springcloud-eureka-one:8761/eureka/
instance:
prefer-ip-address: true
server:
port: 8899
3.启动类增加代码
//发现服务注册中心,将服务进行注册
@EnableDiscoveryClient
@SpringBootApplication
public class DemoSpringcloudServiceUserApplication {
public static void main(String[] args) {
SpringApplication.run(DemoSpringcloudServiceUserApplication.class, args);
}
//定义脚手架
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
4. 试验测试代码
@RestController
public class UserController {
@Resource
private RestTemplate restTemplate ;
/**
* 这是提供的一个微服务方法
* @return Object
*/
@GetMapping("/findUser")
public Object findUser(){
return "hello lemon" ;
}
/**
* 测试ribbon调用自己的方法
* @return Object
*/
@GetMapping("/getRibbon")
public Object testRibbon(){
return restTemplate.getForObject("http://demo-springcloud-service-user/findUser",String.class);
}
}
5. 预览体验
访问http:localhost:8761/ 可以看到服务已经注册
访问http://localhost:8899/testRibbon
表明调用服务成功,可以成功利用testRibbon请求,访问 findUser请求。