欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringCloud Alibaba Nacos 服务发现与配置管理

程序员文章站 2022-03-14 10:08:47
...

1、理解服务发现

1.1、微服务架构

为适应企业的业务发展,提高软件研发的生产力,降低软件研发的成本,软件架构也作了升级和优化,将一个独立的系统拆分成若干小的服务,每个小服务运行在不同的进程中,服务与服务之间采用RESTful、RPC等协议传输数据,每个服务所拥有的功能具有独立性强的特点,这样的设计就实现了单个服务的高内聚,服务与服务之间的低耦合效果,这些小服务就是微服务,基于这种方法设计的系统架构即微服务架构。
下图是基于微服务架构的电商系统:

SpringCloud Alibaba Nacos 服务发现与配置管理

特点:

  • 1、服务层按业务拆分为一个一个的微服务。
  • 2、微服务的职责单一。
  • 3、微服务之间采用RESTful、RPC等轻量级协议传输。
  • 4、有利于采用前后端分离架构。

1.2、理解服务发现

1.2.1、测试环境

在微服务架构中,整个系统会按职责能力划分为多个服务,通过服务之间协作来实现业务目标。这样在我们的代码中免不了要进行服务间的远程调用,服务的消费方要调用服务的生产方,为了完成一次请求,消费方需要知道服务生产方的网络位置(IP地址和端口号)。
我们的代码可以通过读取配置文件的方式读取服务生产方网络位置,如下:

SpringCloud Alibaba Nacos 服务发现与配置管理

我们通过Spring Boot技术很容易实现:

pom.xml如下:

<?xml version="1.0" encoding="UTF‐8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema‐instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven‐4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.myron.nacos</groupId>
    <artifactId>nacos‐discovery</artifactId>
    <version>1.0‐SNAPSHOT</version>
<packaging>pom</packaging>       
    
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring‐boot‐dependencies</artifactId>
                <version>2.1.3.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>