002 使用nacos完成服务的注册和发现

一 .概述

 在前面我们提到了spring-cloud实现了一个公共的spring-cloud-common的抽象,通过这个抽象可以让我们很简单的替换掉服务的注册中心.

 本次,我们首先一个微服务,然后注册到另外一个服务上,此外,我们还是用Ribbon实现服务的发现.

二 .环境的配置

 我们本次使用springboot2和springlcoud的正式版本.

 首先,我们访问springcloud的版本库.

    <dependencies>
        <!--web-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- actuator-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
    </dependencies>

  

/**
 * 开启 nacos服务注册发现
 */
@EnableDiscoveryClient
@SpringBootApplication
public class NacosProducerApplication {

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

    @RestController
    public class EchoController {
        @GetMapping(value = "/echo/{string}")
        public String echo(@PathVariable String string) {
            return "Hello Nacos Discovery " + string;
        }
    }
}

  

server.port=8081
spring.application.name=nacos-producer
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
management.endpoints.web.exposure.include=*

  

启动这个springcloud的客户端,我们看看我们的服务是否可以注册到nacos之中.

扫描二维码关注公众号,回复: 7078457 查看本文章

我们发现了,我们的服务现在已经可以注册到服务注册中心.

二 . 调用微服务

在springcloud之中,我们可以使用多种方式进行客户端的调用,比较简单的一种就是使用openfeign来进行,本次,我们也使用open-feign来实现这个功能.

我们首先创建一个consumer项目.

@FeignClient(value = "nacos-producer")
public interface ProducerFeign {

    @GetMapping("echo/{path}")
    public String echo(@PathVariable("path") String path);
}

我们发现,我们将consumer也注册到服务中心了,我们看看调用的代码.

  @Resource
    private ProducerFeign producerFeign;

    @GetMapping("echo")
    public String echo(){
        return this.producerFeign.echo("trek");
    }

  当我们访问http://localhost:8082/echo的时候,我们就可以得到下面的内容.

至此,我们完成了基本的服务注册和发现的内容,下一节,我们开始实现高可用的Nacos服务注册中心.

猜你喜欢

转载自www.cnblogs.com/trekxu/p/11398928.html
002