微服务系列(4)- Nacos注册中心

1. Nacos安装与使用

1.1 Nacos下载

在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:

GitHub主页:https://github.com/alibaba/nacos

GitHub的Release下载页:https://github.com/alibaba/nacos/releases

找到 Nacos的安装包以后直接下载即可

微服务系列(4)- Nacos注册中心_第1张图片

下载地址 : nacos-server

下载完成后解压即可!


1.2 Nacos安装与使用

Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。

如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改conf目录下的application.properties 配置文件中的端口:

### Default web server port:
server.port=8848

进入到 nacos 的bin目录下, 在当前目录下执行启动命令

startup.cmd -m standalone

启动成功以后的界面如下图所示 :

微服务系列(4)- Nacos注册中心_第2张图片

1.3 Nacos的访问

我们在启动成功以后可以通过访问 http://127.0.0.1:8848/nacos 即可访问Nacos的web界面

默认的用户名和密码都是 nacos

微服务系列(4)- Nacos注册中心_第3张图片

如上图所示已经启动成功了!

2. Nacos注册中心

2.1 服务注册

首先需要先在父工程的pom文件中的 dependencies 中引入

SpringCloudAlibaba 的依赖:

			
            <dependency>
                <groupId>com.alibaba.cloudgroupId>
                <artifactId>spring-cloud-alibaba-dependenciesartifactId>
                <version>2.2.6.RELEASEversion>
                <type>pomtype>
                <scope>importscope>
            dependency>

注意 : 然后需要注释掉 order-serviceuser-service 的 Eureka 依赖

注释掉以后再添加 nacos 的客户端依赖

		
        <dependency>
            <groupId>com.alibaba.cloudgroupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
        dependency>

依赖添加完毕后, 需要在 user-serviceorder-service 这两个微服务的配置文件上注释掉 eureka 的地址, 然后添加 nacos 的地址

spring:
  cloud:
    nacos:
      server-addr: localhost:8848        

切记 : 要注释掉 Eureka 的依赖和服务配置!

以上步骤完成以后, 重新启动微服务后, 打开 http://127.0.0.1:8848/ 登陆 Nacos 既可在服务管理的服务列表中查看已经注册微服务

微服务系列(4)- Nacos注册中心_第4张图片

2.2 分级存储

一个服务可以有多个实例,例如我们的user-service,可以有:

  • 127.0.0.1:8081
  • 127.0.0.1:8082
  • 127.0.0.1:8083

假如这些实例分布于全国各地的不同机房,例如:

  • 127.0.0.1:8081,在上海机房

  • 127.0.0.1:8082,在上海机房

  • 127.0.0.1:8083,在杭州机房

Nacos就将同一机房内的实例 划分为一个集群

也就是说,user-service 是服务,一个服务可以包含多个集群,如杭州、上海,

每个集群下可以有多个实例,形成分级模型,如图:

微服务系列(4)- Nacos注册中心_第5张图片

微服务互相访问时,应该尽可能访问同集群实例,因为本地访问速度更快。当本集群内不可用时,才访问其它集群。例如:

微服务系列(4)- Nacos注册中心_第6张图片

杭州机房内的order-service应该优先访问同机房的user-service

以上是分级存储的介绍, 下面讲讲如何给不同的微服务配置不同的集群

分别在 user-service 微服务和 order-service 微服务的 application.yml 配置文件上添加

  cloud:
    nacos:
      discovery:
        cluster-name: HZ
      server-addr: localhost:8848

user-service 微服务上指定集群为 HZ, 在 order-service 微服务上指定集群为 SH

点击服务列表的详情即可查看对应集群的微服务实例

微服务系列(4)- Nacos注册中心_第7张图片

你可能感兴趣的