SpringCloud-搭建Nacos配置中心

这篇具有很好参考价值的文章主要介绍了SpringCloud-搭建Nacos配置中心。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Nacos 功能介绍

Nacos(Dynamic Naming and Configuration Service)是阿里巴巴开源的一个分布式服务注册、配置管理,以及服务健康管理平台。在微服务架构中,配置管理是至关重要的一环,Nacos 提供了可靠、动态的配置管理功能,为分布式系统的配置中心提供了便捷的解决方案。

Nacos的主要功能图:

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

Nacos 除了可以作为服务的注册中心,同样可以作为集中管理配置信息的配置中心来使用。我们通过在 Nacos 的控制台中对配置信息进行修改,可以直接作用到应用,避免应用的重新发布,这个过程叫配置的热更新。

下面我们就来一步一步介绍如何在 Spring Cloud 微服务项目里搭建 Nacos 配置中心。


二、安装 Nacos

Nacos的安装相对简单,首先需要从官方网站下载最新版本的Nacos Server压缩包。解压后,通过执行相应的启动脚本,即可启动Nacos服务。在启动过程中,可以通过修改配置文件来配置Nacos的各项参数,例如数据库配置、端口号等。

可以参考我之前写过的这篇文章:SpringCloud-搭建Nacos服务中心


三、项目引入 Nacos

首先我们准备好或者创建一个微服务项目,如果不会创建,可以参考:

SpringCloud-创建多模块项目

项目准备好之后,我们引入 Nacos,引入注册中心的流程可以参考下面的文章:

SpringCloud-项目引入Nacos

这次,由于我们需要使用到 Nacos 配置管理的功能,所以每个服务模块的 pom.xml 里还需要引入用于 Nacos 配置管理的 jar 包:

<!-- Maven 依赖 -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端


四、Nacos控制台新建配置

我们访问 Nacos 的控制台页面,Nacos 控制台默认地址是 localhost:8848/nacos,创建配置:

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

配置起名为:springcloud-provider.yaml,类型选为 YAML 类型,配置内容我们写一个时间格式:

pattern:
    dateformat: yyyy-MM-dd HH:mm:ss

其他内容我们先不写,Namespace 用于指定命名空间来实现环境隔离,Namespace 是最外层的环境,向内依次是 Group 和服务。

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

点击发布,可以看到这条配置已经显示在控制台了。

创建配置成功,接着,我们要去实现项目读取 Nacos 上的配置。 


五、微服务项目读取配置

1、创建bootstrap.yml文件

在 /resource 文件夹下创建 bootstrap.yml 文件,和原先的 application.yml 配置文件平级,并将原先配置文件中的 nacos 配置的部分移动到优先级更高的文件 bootstrap.yml 里。

bootstrap.yml:

server:
  #程序端口号
  port: 8083
spring:
  application:
    name: springcloud-provider
  profiles:
    active: dev
  cloud:
    nacos:
      config:
        file-extension: yaml
        username: nacos
        password: nacos
        server-addr: 127.0.0.1:8848
      discovery:
        server-addr: 127.0.0.1:8848

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

原先的 application.yml 变成:

management:
  endpoints:
    web:
      exposure:
        #公开所有端点
        include: '*'

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端


2、增加bootstrap.yml的读取依赖

每个想要进行 Nacos 配置管理的服务模块,不仅需要创建 bootstrap.yml 文件,还需要引入能够在项目启动时自动发现并加载 bootstrap.yml 文件的依赖,在 pom.xml 里添加:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
    <version>3.0.1</version>
</dependency>

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

这样在在项目启动时,bootstrap.yml 文件就可以自动被发现并加载了。


3、编写读取配置信息的接口

在 Spring Cloud 项目中,我们可以通过注入 @Value 注解来读取 Nacos 中的配置信息。

创建 ConfigController 类:

package com.example.springcloudprovider.demos.web;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController {

    @Value("${pattern.dateformat}")
    private String dateformat;

    @GetMapping("dateformat")
    public String now(){
        return dateformat;
    }

}

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端


4、测试读取配置信息

启动项目,访问测试接口:localhost:8083/config/dateformat

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

可以看到我们在 Nacos 上配置的日期格式已经被加载到项目里了。


六、测试Nacos对配置热更新

1、修改Nacos上配置内容

我们在 Nacos 控制台里修改配置,将 dateformat 改为 yyyy-MM-dd HH:mm:ssss

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端


2、查看项目内配置是否更新

再次访问测试接口:localhost:8083/config/dateformat

SpringCloud-搭建Nacos配置中心,Java,spring cloud,java,nacos,配置管理,微服务,分布式,后端

可以看到我们的项目配置已经被热更新了,即配置实时更新,不需要重新启动或部署项目。文章来源地址https://www.toymoban.com/news/detail-830194.html

到了这里,关于SpringCloud-搭建Nacos配置中心的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring Cloud集成Nacos实现服务配置中心 | Spring Cloud 7

    先我们来看一下,微服务架构下关于配置文件的一些问题: 配置文件相对分散。在一个微服务架构下,配置文件会随着微服务的增多变的越来越多,而且分散在各个微服务中,不好统一配置和管理。 配置文件无法区分环境,开发环境、测试环境、线上环境。微服务项目可能会

    2024年02月14日
    浏览(33)
  • Spring Cloud Alibaba Nacos 构建配置中心

    登录 Nacos 面板,依次点击左侧菜单栏【命名空间→新建命名空间】、填写命名空间名和描述信息,点击【确定】: 依次点击左侧菜单栏【配置管理→配置列表】、切换到指定命名空间【此处为 shop】、点击右侧【+】号: 添加配置 填写【Data ID】要求组内唯一,【Group】组名,

    2024年02月08日
    浏览(38)
  • Spring Cloud Gateway集成Nacos作为注册中心和配置中心

    本篇文章将介绍Spring Cloud Alibaba体系下Spring Cloud Gateway的搭建,服务注册中心和分布式配置中心使用Nacos,后续将会持续更新,介绍集成Sentinel,如何做日志链路追踪,如何做全链路灰度发布设计,以及Spring Cloud Gateway的扩展等。 ​ Spring Boot,Spring Cloud,Discovery,Config等基础依

    2024年02月11日
    浏览(32)
  • Spring Cloud Alibaba--Nacos服务注册和配置中心

    Nacos 是Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos的特性,官网解释如下: 服务发现和服务健康监测 Nacos 支持基于 DNS 和基于 RPC 的服务发现。服务提供者使用 原生SDK、OpenAPI、或一个独立的Age

    2024年02月05日
    浏览(39)
  • Spring Cloud Alibaba Nacos(服务注册及配置中心)

    Nacos是由阿里巴巴提供的一款专门构建云本地应用的 动态服务发现、配置中心和服务管理平台 。 在Spring Cloud Alibaba中常使用Nacos作为注册中心和分布式配置中心。  (1)服务发现和管理 动态服务发现是以服务为中心(例如微服务或云原生)体系结构的关键。Nacos支持基于DN

    2024年02月16日
    浏览(39)
  • Spring Cloud Alibaba 微服务2,注册中心演变 + Nacos注册中心与配置中心

    🏆作者简介: 哪吒 ,CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家💪 , 专注Java硬核干货分享,立志做到Java赛道全网Top N。 🏆本文收录于 Java基础教程系列(进阶篇) ,本专栏是针对大学生、初级Java工程师精心打造, 针对Java生态,逐个击破,

    2024年02月02日
    浏览(38)
  • day10-Spring Cloud Alibaba Nacos-服务注册与配置中心

    官网:https://github.com/alibaba/nacos,Nacos官方中文手册 Nacos:Spring Cloud Alibaba服务注册与配置中心(非常详细) (biancheng.net) Spring Cloud Alibaba系列-一文读懂Nacos原理 - 掘金 (juejin.cn) Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服

    2024年02月08日
    浏览(36)
  • 微服务 Spring Cloud 7,Nacos配置中心的Pull原理,附源码

    大家好,我是哪吒。 在单体服务时代,关于配置信息,管理一套配置文件即可。 而拆分成微服务之后,每一个系统都会有自己的配置,并且都各不相同,有些配置还需要动态改变,以达到动态降级、切流量、扩缩容等目的。 在Spring Boot开发中,可以把配置项放到config文件中

    2024年02月04日
    浏览(42)
  • 【深入了解Spring Cloud Alibaba Nacos:服务注册和配置中心】—— 每天一点小知识

                                                                💧 深入了解 S p r i n g C l o u d A l i b a b a N a c o s :服务注册和配置中心 color{#FF1493}{深入了解Spring Cloud Alibaba Nacos:服务注册和配置中心} 深入了解 Sp r in g Cl o u d A l ibaba N a cos :服务注

    2024年02月11日
    浏览(37)
  • Nacos 单机集群搭建及常用生产环境配置 | Spring Cloud 3

    Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。 Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据

    2024年02月03日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包