nacos牛刀小试之注册中心

2次阅读

共计 2114 个字符,预计需要花费 6 分钟才能阅读完成。

上一篇介绍了 nacos 的下载安装,现在我们来看一下 nacos 的注册中心

首先新建一个工程

服务提供者

新建一个 springboot 工程
我使用 maven 来构建工程,依赖如下


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

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        
        <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

所需要的 jar 包下载完毕

更改配置 上一篇介绍了 nacos 的下载安装,现在我们来看一下 nacos 的注册中心

首先新建一个工程

服务提供者 新建一个 springboot 工程

我使用 maven 来构建工程,依赖如下

所需要的 jar 包下载完毕

贴上配置,我采用的是 yaml 格式的配置,看起来真的清晰

server:
  port: 8881

spring:
  application:
    name: nacos-provider
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

最后我们稍稍做一个测试类

@SpringBootApplication
@EnableDiscoveryClient
@RestController
@Slf4j
public class NacosProviderApplication {@GetMapping("/hello")
    public String hello(@RequestParam String name) {log.info("invoked name =" + name);
        return "hello" + name;
    }
    
    
    public static void main(String[] args) {SpringApplication.run(NacosProviderApplication.class, args);
    }

}

下来我们启动下服务


看到日志,我们的服务已经注册到了 nacos,打开 nacos 看看


哈哈 我们的服务成功注册到了 naco

服务消费者

下来我们创建一个消费者

maven 依赖都一样, 配置稍稍改动一下

server:
  port: 8882

spring:
  application:
    name: nacos-consumer
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

启动类

@SpringBootApplication
@EnableDiscoveryClient
@Slf4j
@RestController
public class NacosConsumerApplication {

    @Autowired
    private RestTemplate restTemplate;
    
    @GetMapping("/callNacos")
    public String testRest(@RequestParam("name") String name) {String result = restTemplate.getForEntity("http://nacos-provider/hello?name="+name,String.class).getBody();
        log.info("调用提供者返回:{}",result);
        return result;
        
    }
    
    public static void main(String[] args) {SpringApplication.run(NacosConsumerApplication.class, args);
    }

}


原来是让把 RestTemplate 注册到 spring 容器, 编写一个配置类,把 RestTemplate 注到容器

@Configuration
public class RestTemplateConfig {
    
    @LoadBalanced
    @Bean
    public RestTemplate resultTemplate(){RestTemplate template = new RestTemplate();
        return template;
    }

}

注册之后 我们在启动看看,这次没有异常

打开 naocos 查看服务列表

哈哈 都注册上去了

测试验证


成功的返回了我们需要的结果。

这次简单的配置使用的 nacos 的服务注册功能,都是单节点,以后在研究研究集群模式

正文完
 0