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

Updated on in Java with 0 views and 0 comments

去年上手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