微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

nacos注册中心

1. 认识和安装nacos

1.1 认识nacos

Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件。相比Eureka功能更加丰富,在国内受欢迎程度较高。

在这里插入图片描述

1.2 安装nacos

1.2.1 Windows安装

(1)下载安装包

在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码
GitHub主页:https://github.com/alibaba/nacos
GitHub的Release下载页:https://github.com/alibaba/nacos/releases
如图:

在这里插入图片描述


(2)解压

将这个包解压到任意非中文目录下,如图:

在这里插入图片描述


目录说明:

(3)端口配置

Nacos的认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。
如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口:

在这里插入图片描述


修改其中的内容

在这里插入图片描述


(4)启动

启动非常简单,进入bin目录,结构如下:

在这里插入图片描述


后执行命令即可:

  • windows命令:
startup.cmd -m standalone

执行后的效果如图:

在这里插入图片描述


(5)访问

在浏览器输入地址:http://127.0.0.1:8848/nacos即可:

在这里插入图片描述


认的账号和密码都是nacos,进入后:

在这里插入图片描述

1.2.2 Linux安装

Linux或者Mac安装方式与Windows类似。

(1)安装JDK

Nacos依赖于JDK运行,索引Linux上也需要安装JDK才行。
上传jdk安装包:

在这里插入图片描述


上传到某个目录,例如:/usr/local/
然后解压缩:

tar -xvf jdk-8u144-linux-x64.tar.gz

然后重命名为java
配置环境变量:

export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin

设置环境变量:

source /etc/profile

(2)上传安装包

如图:

在这里插入图片描述


上传到Linux服务器的某个目录,例如/usr/local/src目录下:

在这里插入图片描述

(3)解压

命令解压缩安装包:

tar -xvf nacos-server-1.4.1.tar.gz

然后删除安装包:

rm -rf nacos-server-1.4.1.tar.gz

目录中最终样式:

在这里插入图片描述


目录内部

在这里插入图片描述

(4)端口配置

与windows中类似

(5)启动

在nacos/bin目录中,输入命令启动Nacos:

sh startup.sh -m standalone

1.3 服务注册到nacos

  1. 在cloud-demo父工程中添加spring-cloud-alilbaba的管理依赖:
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
    <version>2.2.6.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>
  1. 注释掉order-service和user-service中原有的eureka依赖。
  2. 添加nacos的客户端依赖:
<!-- nacos客户端依赖 -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
 </dependency>
  1. 修改user-service&order-service中的application.yml文件,注释eureka地址,添加nacos地址:
spring:
  cloud:
    nacos:
      server-addr: localhost:8848 # nacos服务地址
  1. 启动并测试:

    在这里插入图片描述

1.4 Nacos服务分级模型

  1. Nacos服务分级存储模型

    在这里插入图片描述

  2. 服务跨集群调用问题

服务调用尽可能选择本地集群的服务,跨集群调用延迟较高
本地集群不可访问时,再去访问其它集群

在这里插入图片描述

  1. 服务集群属性

(1)修改application.yml,添加如下内容

spring:
  cloud:
      nacos:
            server-addr: localhost:8848 # nacos 服务端地址
                  discovery:
                          cluster-name: HZ # 配置集群名称,也就是机房位置,例如:HZ,杭州

(2)在Nacos控制台可以看到集群变化

在这里插入图片描述

  1. 总结
    (1)Nacos服务分级存储模型
    一级是服务,例如userservice
    二级是集群,例如杭州或上海
    三级是实例,例如杭州机房的某台部署了userservice的服务器
    (2)如何设置实例的集群属性
    修改application.yml文件添加spring.cloud.nacos.discovery.cluster-name属性即可

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐