Spring Cloud Alibaba —— 服务注册与发现 Nacos

Updated on in Java with 652 views

去年上手 Spring Cloud,今年开始学习 Spring Cloud Alibaba,准备分享一些干货和重要的知识点。


Nacos 致力于发现、配置、管理微服务,在功能上可以看做与 Eureka、Zookeeper、Consul 等类似,但又存在特点区别的组件,就比如 Nacos 还拥有管理配置的能力,这一点是其他的服务发现组件所没有的。

安装 Nacos Server

  1. 从 GitHub 仓库下载稳定版本的Nacos Server
  2. 启动 Nacos Server,以 Linux 系统为例:sh startup.sh -m standalone

整合 Spring Cloud Alibaba

Nacos 作为 Spring Cloud Alibaba 的一个组件,我们为了更好的管理 Nacos 及其他组件的版本,我们在 Maven 中整合 Spring Cloud Alibaba,当然整合 Spring Cloud Alibaba 前还需要整合 Spring Cloud。

<dependencyManagement>
    <dependencies>
        <!-- 整合Spring Cloud -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Greenwich.SR1</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!-- 整合Spring cloud Alibaba -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>0.9.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

对于 Spring Cloud 和 Spring Cloud Alibaba 之间的版本依赖关系,建议参考官方文档,瞎引用容易出大事情。

image.png

添加 Nacos 依赖

整合好后的第一件事就是添加 Nacos 依赖,无须再重复指定版本。

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

添加 Nacos 配置

配置只需要指定该微服务实例的名称,已经 Nacos Server 的地址和端口号,其实当完成好这一步时你的微服务就已经注册到 Nacos Server 里了,此时打开服务发现中心的地址就可以查看当前服务注册情况。无须再加任何注解,对比其他微服务注册中心 Nacos 也是更为便捷。

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

领域模型

服务发现的领域模型,Nacos 从大到小分为以下5个领域模型:

  1. Namespace:不同的 Namespace 下的微服务之间是访问不通的,可以用于区分环境使用。比如开发、测试、生产等。
  2. Group:不同的服务可分到一组,默认为DEFAULT_GROUP
  3. Service:微服务级别,可注册到一个服务发现中心
  4. Cluster:可将同一个微服务注册到不同的集群,如北京集群,南京集群等。
  5. Instance:指微服务实例

资源

Spring Cloud Alibaba 版本说明:版本说明
Nacos 文档:文档
Nacos 仓库:仓库


标题:Spring Cloud Alibaba —— 服务注册与发现 Nacos
作者:Jeffrey

Responses
取消