微服务-注册中心-nacos-注册

2,767 阅读2分钟

问题:

使用nacos作为注册中心。

原理:

nacos遵循的是REST API的风格。
核心就是Config Service和 Naming Service
这里主要是用的Naming Service。
通过nacos/v1/ns/instance接口,把服务注册到nacos中指定的目录下去。
namespace(命名空间)-cluster(集群)-dom(服务)-实例。

文档:

nacos官方文档: https://nacos.io/zh-cn/docs/quick-start.html
nacos注册源码分析: https://blog.csdn.net/xc1158840657/article/details/90712631
关于Springboot,SpringCloud,SpringCloudAlibaba对应的版本关系地址:
https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

步骤:

1.下载nacos并启动
2.创建SpringBoot项目并添加依赖(2个依赖,SpringCloud和nacos)
3.设置nacos地址和启动注解
4.启动项目并查看是否成功注册

1.下载nacos并启动

根据官网流程来。不管是下载包还是自己拉取代码来编译。都可以。

然后访问 http://localhost:8848/nacos/#/login
账号密码都是 nacos

2.创建SpringBoot项目并添加依赖

    <!--注意这里的版本。默认创建的可能已经超过这个版本了,尽量保持一致。-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.5.RELEASE</version> 
        <relativePath/> 
    </parent>

    <!-- 添加以下两个依赖 -->
    <dependencyManagement>
        <dependencies>
            <!--F版本-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Finchley.SR4</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
             <!--SpringCloudAlibaba还没正式归入到cloud版本里面去,所以需要额外添加-->
             <!--注意这里的groupId。用的是alibaba 不是springframework.-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.0.1.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    
    <!--nacos 作为注册中心-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>
注意Springboot的版本,SpringCloud的版本,SpringCloudAlibaba的版本。

3.设置nacos地址和启动注解

配置文件编写naocs地址:
    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
    设置项目名称(这个就是在nacos上显示的名称)和端口
    spring.application.name=nacos-provider
    server.port=9870

启动类开启服务发现与注册
@EnableDiscoveryClient

4.启动项目并查看是否成功注册

已经注册成功。

总结:

感觉和使用其他注册中心没啥区别。
都是添加依赖。开启注解就OK了。
需要注意的就是Springboot的版本,SpringCloud的版本,SpringCloudAlibaba的版本之间的对应关系。