当前位置: 首页 > news >正文

基于SpringCloudAlibaba实现的NacosConfig

概述

Nacos除了实现了服务的注册发现之外,还将配置中心功能整合在了一起。通过Nacos的配置管理功能,我们可以将整个架构体系内的所有配置都集中在Nacos中存储。这样做的好处主要有以下几点: 分离的多环境配置,可以更灵活的管理权限,安全性更高 应用程序的打包更为纯粹,以实现一次打包,多处运行的特点

详细

详细

一、运行效果

image.png

二、实现过程

①、创建配置

第一步:进入Nacos的控制页面,在配置列表功能页面中,点击右上角的“+”按钮,进入“新建配置”页面,如下图填写内容:

image.png

②、创建

第一步:创建一个Spring Boot应用,可以命名为:nacos-config

第二步:编辑pom.xml,加入必要的依赖配置,比如:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId>
</dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>

③、在微服务中添加nacos config的配置

spring:application:name: service-productcloud:nacos:config:server-addr: localhost:8848 # nacos的服务端地址file-extension: yaml # 配置文件格式profiles:active: dev

④、添加Controller访问测试

@RestController@RefreshScope
public class NacosConfigController {    @Value("${config.name}")    public String appName;    @GetMapping("/nacos-config")public     String nacosConfig() {       return  appName;}
}

三、项目结构图

image.png

四、补充

服务配置中心介绍

  1. 配置文件相对分散。在一个微服务架构下,配置文件会随着微服务的增多变的越来越多,而且分散在各个微服务中,不好统一配置和管理。

  2. 配置文件无法区分环境。微服务项目可能会有多个环境,例如:测试环境、预发布环境、生产环境。每一个环境所使用的配置理论上都是不同的,一旦需要修改,就需要我们去各个微服务下手动
    维护,这比较困难。

  3. 配置文件无法实时更新。我们修改了配置文件之后,必须重新启动微服务才能使配置生效,这对一
    个正在运行的项目来说是非常不友好的。
    基于上面这些问题,我们就需要配置中心的加入来解决这些问题。

配置中心的思路是:

  • 首先把项目中各种配置全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。

  • 当各个服务需要获取配置的时候,就来配置中心的接口拉取自己的配置。

  • 当配置中心中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。

http://www.lryc.cn/news/153579.html

相关文章:

  • 景联文科技:高质量AI数据标注助力大语言模型训练,推动人工智能落地应用
  • 深度学习(前馈神经网络)知识点总结
  • 点云从入门到精通技术详解100篇-点云信息编码(中)
  • 前端刷题-Promise系列
  • 3分钟:腾讯云免费SSL证书申请教程_免费HTTPS证书50张
  • 如何快速成为一名优秀的python工程师?
  • Sqoop(二):Hive导出数据到Oracle
  • HTML数字倒计时效果附源码
  • 以udp协议创建通信服务器
  • 【数据结构】队列篇| 超清晰图解和详解:循环队列模拟、用栈实现队列、用队列实现栈
  • js+html实现打字游戏v2
  • Python之作业(一)
  • uni-app 之 v-on:click点击事件
  • 迁移学习:实现快速训练和泛化的新方法
  • 蓝队追踪者工具TrackAttacker,以及免杀马生成工具
  • ELK日志收集系统(四十九)
  • Linux知识点 -- Linux多线程(四)
  • Java设计模式:四、行为型模式-07:状态模式
  • 很多应用都是nginx+apache+tomcat
  • 原型模式:复制对象的技巧
  • ClickHouse进阶(五):副本与分片-1-副本与分片
  • Android 华为手机荣耀8X调用系统裁剪工具不能裁剪方形图片,裁剪后程序就奔溃,裁剪后获取不到bitmap的问题
  • 《Flink学习笔记》——第十二章 Flink CEP
  • 谷歌IndexedDB客户端存储数据
  • 天气数据的宝库:解锁天气预报API的无限可能性
  • 插入排序(Insertion Sort)
  • 2023蓝帽杯初赛
  • 风险评估
  • 直播软件app开发中的AI应用及前景展望
  • vscode html使用less和快速获取标签less结构