SpringCloud-搭建Nacos服务中心

Nacos 是一个开源的动态服务发现、配置管理和服务管理平台。它支持多种服务发现协议,包括基于 DNS 和 HTTP 的服务发现。Nacos 提供了强大的配置管理和服务发现功能,使得在微服务架构中轻松实现服务注册、发现和配置管理成为可能。在本篇博客中,我们将介绍如何在 Spring Cloud 应用中安装和集成 Nacos 注册中心。


一、下载安装Nacos

首先,我们需要从 Nacos 的官方网站下载发布版本。下载地址:Releases · alibaba/nacos · GitHub

SpringCloud-搭建Nacos服务中心_第1张图片

选择合适的版本并下载,解压缩得到 Nacos 的安装包。 


二、启动Nacos服务

在解压后的 Nacos 目录中,找到 bin 文件夹。

SpringCloud-搭建Nacos服务中心_第2张图片

用写字板编辑 startup.cmd,将 set MODE= "cluster" 修改为:

set MODE=“standalone”

这将在启动 Nacos Server 时,默认使用 standalone 模式运行。

修改完成后,切换 cmd 到 bin 目录下启动 Nacos Server:

C:\Users\Damon.Liu>d:

D:\>cd D:\Tools\Nacos\bin

D:\Tools\Nacos\bin>startup.cmd -m standalone

SpringCloud-搭建Nacos服务中心_第3张图片

这里提醒我需要配一个 java8以上 的 JAVA_HOME 环境变量。

简单配一下:

SpringCloud-搭建Nacos服务中心_第4张图片

再次尝试启动 Nacos,这次成功了!

SpringCloud-搭建Nacos服务中心_第5张图片


三、访问Nacos控制台

在 Nacos 成功启动后,可以通过浏览器访问 Nacos 控制台,默认地址是 http://localhost:8848/nacos。在控制台中,你可以管理服务、配置以及其他 Nacos 的功能。

SpringCloud-搭建Nacos服务中心_第6张图片


四、SpringCloud集成Nacos

1、创建SpringCloud父工程

为了方便模拟,我新创建了一个名为 NacosTest 的 SpringCloud 项目。

SpringCloud-搭建Nacos服务中心_第7张图片

SpringCloud-搭建Nacos服务中心_第8张图片

删除项目内多余内容。

SpringCloud-搭建Nacos服务中心_第9张图片


2、创建生产者子项目

新建 nacos-provider 模块。

SpringCloud-搭建Nacos服务中心_第10张图片

选中Spring Web 和 Nacos Service Discovery(用于服务自动注册和自动发现)。

SpringCloud-搭建Nacos服务中心_第11张图片

创建完成后,手动删除 demos 文件夹,删除后项目结构如图:

SpringCloud-搭建Nacos服务中心_第12张图片


3、父子项目各添加依赖

子项目 pom.xml 添加父工程依赖:


    com.example
    NacosTest
    0.0.1-SNAPSHOT
    

SpringCloud-搭建Nacos服务中心_第13张图片

父项目的 pom.xml 里补充子项依赖和配置:

pom

    nacos-provider

SpringCloud-搭建Nacos服务中心_第14张图片


4、配置生产者项目

① 启动类增加服务发现注解

package com.example.nacosprovider;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@EnableDiscoveryClient
@SpringBootApplication
public class NacosProviderApplication {

    public static void main(String[] args) {
        SpringApplication.run(NacosProviderApplication.class, args);
    }

}

SpringCloud-搭建Nacos服务中心_第15张图片


② 修改application.yml配置

重命名 application.properties 为 application.yml,内容修改为:

server:
  #程序端口号
  port: 8081
spring:
  application:
    #应用名称
    name: nacos-provider
  cloud:
    nacos:
      discovery:
        #nacos地址
        server-addr: 127.0.0.1:8848
management:
  endpoints:
    web:
      exposure:
        #公开所有端点
        include: '*'

五、访问Nacos查看已注册服务

访问我们的 Nacos 服务地址:http://localhost:8848/nacos,可以看到控制台的查看已注册服务。

SpringCloud-搭建Nacos服务中心_第16张图片

通过以上步骤,我们成功在 Spring Cloud 应用中集成了 Nacos 注册中心和配置中心。我们过 Nacos 的控制台管理服务和配置信息,实现更灵活的微服务架构。


六、Nacos的丰富功能

Nacos(Namespace Aware Clustered Object Storage)作为一个强大的服务发现、配置管理和服务管理平台,提供了许多丰富的功能。

功能 详述
服务注册 Nacos 作为服务注册中心,支持服务的注册与发现。通过 Nacos,微服务应用可以方便地注册自身服务,同时通过 Nacos 进行服务的发现,以实现微服务之间的通信。
服务发现 服务消费者通过 Nacos 注册中心发现并调用其他服务。
配置管理 Nacos作为配置中心,支持动态配置管理,实时更新应用的配置信息。通过 Nacos 的配置中心,应用可以动态读取配置信息,实现配置的集中管理。Nacos支持配置的动态监听,当配置发生变化时,应用可以立即感知并更新。
命名空间
和分组
Nacos支持多命名空间和分组,帮助用户更好地管理和隔离不同环境下的服务和配置。
健康检查 Nacos提供了健康检查机制,可实时监测服务的运行状态,确保服务的可用性。
集群和
多数据中心
Nacos支持横向扩展,可以构建成多节点的集群,支持多数据中心的部署,提供高可用和容错能力。
配置共享
和保护
Nacos允许配置共享,支持配置的版本管理和回滚。同时,Nacos提供配置的保护机制,防止配置被误操作删除。
插件扩展 Nacos提供了丰富的插件机制,可以通过插件扩展实现更多自定义功能,如自定义路由、自定义负载均衡策略等。

Nacos 的功能丰富多样,涵盖了服务注册与发现、配置管理、健康检查等多个方面。通过学习 Nacos 的这些核心功能,可以更好地利用 Nacos 构建和管理微服务架构,提升应用的可用性和灵活性。希望这一部分的详解能够帮助你更深入地理解和使用 Nacos。

你可能感兴趣的:(Java,spring,cloud,nacos,注册中心,微服务,分布式,后端)