SpringCloud--Nacos服务发现(十五)

一、Nacos简介

  Nacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
  Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
  Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

二、服务提供配置

  1. Maven依赖

    org.springframework.boot
    spring-boot-starter-parent
    2.1.7.RELEASE
    

com.xtsz
provider
0.0.1-SNAPSHOT
provider


    1.8
    Greenwich.SR2



    
        org.springframework.boot
        spring-boot-starter-web
    
    
    
        org.springframework.cloud
        spring-cloud-starter-alibaba-nacos-discovery
        0.9.0.RELEASE
    


    
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${spring-cloud.version}
            pom
            import
        
    

注意:版本 0.2.x.RELEASE 对应的是 Spring Boot 2.x 版本,版本 0.1.x.RELEASE 对应的是 Spring Boot 1.x 版本。
组件版本关系:https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

  1. 启动类配置
@SpringBootApplication
@EnableDiscoveryClient
public class ProviderApplication {

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

  1. 配置
server.port=8010
spring.application.name=service-provider
spring.cloud.nacos.discovery.server-addr=192.168.247.130:8848
  1. 控制器
@RestController
@RequestMapping("/user")
public class UserController {
    @GetMapping
    public String getUser(){
        return "admin";
    }
}
  1. 测试注册


    测试注册

三、服务消费配置

  1. Maven依赖

    org.springframework.boot
    spring-boot-starter-parent
    2.1.7.RELEASE
    

com.xtsz
consumer
0.0.1-SNAPSHOT
consumer


    1.8
    Greenwich.SR2



    
    
        org.springframework.boot
        spring-boot-starter-web
    
    
    
        org.springframework.cloud
        spring-cloud-starter-netflix-ribbon
    
    
    
        org.springframework.cloud
        spring-cloud-starter-openfeign
    
    
    
        org.springframework.cloud
        spring-cloud-starter-alibaba-nacos-discovery
        0.9.0.RELEASE
    
    
        org.springframework.boot
        spring-boot-starter-test
        test
    



    
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${spring-cloud.version}
            pom
            import
        
    

  1. 启动类配置
@SpringBootApplication
@EnableDiscoveryClient
public class ConsumerApplication {
    @LoadBalanced
    @Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }
    public static void main(String[] args) {
        SpringApplication.run(ConsumerApplication.class, args);
    }
}
  1. 配置
server.port=8020
spring.application.name=service-consumer
spring.cloud.nacos.discovery.server-addr=192.168.247.130:8848
  1. 控制器配置
@RestController
@RequestMapping("/test")
public class TestController {
    @Autowired
    private RestTemplate restTemplate;

    @RequestMapping(value = "user", method = RequestMethod.GET)
    public String getUser() {
        return restTemplate.getForObject("http://service-provider/user/", String.class);
    }
}

  1. 测试服务消费
    消费服务注册

    http://localhost:8020/test/user
    服务消费

四、常见问题

你可能感兴趣的:(SpringCloud--Nacos服务发现(十五))