微服务 Nacos配置热部署

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

在nacos中添加配置文件

在配置列表中添加配置,
微服务 Nacos配置热部署,JAVA微服务,微服务,前端,javascript

微服务 Nacos配置热部署,JAVA微服务,微服务,前端,javascript

注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要。基本不会变更的一些配置还是保存在微服务本地比较好。

从微服务拉取配置

微服务要拉取nacos中管理的配置,并且与本地的application.yml配置合并,才能完成项目启动。

但如果尚未读取application.yml,又如何得知nacos地址呢?

因此spring引入了一种新的配置文件:bootstrap.yaml文件,会在application.yml之前被读取,流程如下:
微服务 Nacos配置热部署,JAVA微服务,微服务,前端,javascript
bootstrap.yaml是一种先导的文件,他的执行位于application.yml,可以用他来告诉整个服务的热配置的位置

首先我们引入依赖
首先,在user-service服务中,引入nacos-config的客户端依赖:

<!--nacos配置管理依赖-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

我们在与application.yml同样的目录下建立了bootstrap.yaml文件

# 引导文件
# 他的执行时间比application.yml还要靠前

spring:
  application:
    name: user-server # 服务名称
  profiles:
    active: dev #开发环境,这里是dev
  cloud:
    nacos:
      server-addr: localhost:8848 # Nacos地址
      config:
        file-extension: yaml # 文件后缀名

他主要告诉了三件事,我们服务的名称、开发环境以及文件的后缀。这与我们Nacos中的配置的Data ID是相互对应的。

微服务 Nacos配置热部署,JAVA微服务,微服务,前端,javascript

利用代码读取nacos配置

方式一:

在user-service中的UserController中添加业务逻辑,读取pattern.dateformat配置:
我们利用@Value("${pattern.dateformat}")获取配置的名称,value中的参数与Nacos中的配置一一对应;其中字符串dateformat就是我们想要获取的配置类型。同时在@Value注入的变量所在类上添加注解@RefreshScope:

@Slf4j
@RestController
@RequestMapping("/user")
@RefreshScope   // 实时扫描
public class UserController {


    @Autowired
    private UserService userService;

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


    @GetMapping("now")
    public String now()
    {
        return LocalDateTime.now().format(DateTimeFormatter.ofPattern(dateformat));
    }

方式二

使用@ConfigurationProperties注解代替@Value注解。
在user-service服务中,添加一个类,读取patterrn.dateformat属性:
@ConfigurationProperties(prefix = “pattern”)进行前缀扫描文章来源地址https://www.toymoban.com/news/detail-674268.html

package cn.itcast.user.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

    @Component
    @Data
    @ConfigurationProperties(prefix = "pattern")
    public class PatternProperties
    {
        private String dateformat;
    }
>@Autowired
>private PatternProperties patternProperties;
将这个配置类的bean声明进来
利用get函数获取字符串【patternProperties.getDateformat()】
@Slf4j
@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;

    @Autowired
    private PatternProperties patternProperties;

    @GetMapping("now")
    public String now(){
        return LocalDateTime.now().format(DateTimeFormatter.ofPattern(patternProperties.getDateformat()));
    }

    // 略
}

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

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

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

相关文章

  • 若依微服务 + seata1.5.2版本分布式事务(安装配置nacos+部署)

    若依官方使用的1.4.0版本seata,版本较低配置相对更麻烦一些 一、seata服务端下载,下载方式介绍两种入口,如下: 1、找到对应版本,下载 binary 即可。 下载包名为:seata-server-1.5.2.zip 2. github上下载   Releases · seata/seata · GitHub  找到对应的1.5.2版本,每个版本下都有一个缩放

    2024年02月09日
    浏览(51)
  • Java之SpringCloud Alibaba【三】【微服务Nacos-config配置中心】

    Java之SpringCloud Alibaba【一】【Nacos一篇文章精通系列】 跳转 Java之SpringCloud Alibaba【二】【微服务调用组件Feign】 跳转 Java之SpringCloud Alibaba【三】【微服务Nacos-config配置中心】 跳转 Java之SpringCloud Alibaba【四】【微服务 Sentinel服务熔断】 跳转 Java之SpringCloud Alibaba【五】【微服务

    2024年02月16日
    浏览(49)
  • 使用Ruoyi的方法(数据库的创建、YML文件的修改、前端的导入和启动、云服务器简介、NGINX配置部署前端)

    本文章转载于公众号:王清江唷,仅用于学习和讨论,如有侵权请联系 QQ交流群:298405437 本人QQ:4206359 当我们下载好了Ruoyi-Vue之后,我们得到一个文件夹,如下: 内部又有若干文件,如下: 这里面不仅包括了后端程序(基于SpringBoot的Java程序),也包括前端程序(基于Vue的程

    2024年02月03日
    浏览(81)
  • Nacos服务部署安装

    Nocas下载 :https://github.com/alibaba/nacos/releases 首先需要能够让本机访问github,如果本地打不开github,则可以通过网址 查询下面三个域名的ip 然后修改 C:WindowsSystem32driversetc 目录下的 hosts 文件。打开hosts文件后,在末尾添加三行,其中的IP地址为前面查询到的地址 打开cmd,输入

    2023年04月09日
    浏览(28)
  • Nacos Server 部署配置详解

    官方简介:一个更易于构建云原生应用的动态 服务发现(Nacos Discovery ) 、 服务配置(Nacos Config) 和服务管理平台。 Nacos的关键特性包括 : 服务发现和服务健康监测 动态配置服务 动态DNS服务 服务及其元数据管理 Nacos的核心功能 : 服务注册 :Nacos Client会通过发送REST请求的方式

    2024年02月05日
    浏览(45)
  • java+vue 前后端项目部署 服务器部署流程 包括nginx软件安装,服务器选择,域名配置

    现在的web端项目大多数都是java+vue前后端分离的项目,都需要分开来部署,基本上都是部署在云服务器上的,这就涉及到选择和购买服务器,以及安装环境,本文记录的是在机器上安装软件,不在docker和宝塔上安装。下面请看详细的步骤吧,都是自己在工作中使用过的,本人

    2024年02月13日
    浏览(60)
  • nacos不同局域网如何相互调用?nacos微服务云开发,远程联调部署,内网穿透,frp部署

    最近每个人都在家办公,公司项目是微服务的,一个人负责一个小服务,而且每个人都不在同一个局域网内,公司有一个云服务器(部署nacos),一开始大家都把自己负责的服务都注册到nacos上(作为服务注册和服务发现已经配置中心),大家都能注册,当前端人员来联调的时

    2023年04月17日
    浏览(42)
  • Nacos配置中心中配置文件的创建、微服务读取nacos配置中心

    在企业项目中会有非常多的服务,不同的开发环境还有不同的配置文件,所以就导致配置文件非常多。 那么肯定就会有一些公共配置,多个服务都是使用过一样的,那么就可以使用配置中心来进行统一管理,避免修改一个配置项要去各个服务都改一遍。 使用传统方式的配置

    2024年02月02日
    浏览(42)
  • SpringCoud+nacos部署在多ip环境下统一nacos服务注册ip

    场景描述 方法 配置固定ip 在springcloud服务下的bootstrap.yml文件中配置 指定ip端口 application.properties下 指定ip端口 spring.cloud.nacos.discovery.ip = 127.0.0.1 spring.cloud.nacos.discovery.port = 8989 配置使用内网前缀的ip spring.cloud.inetutils.preferred-networks=10.25.14 使用前缀为10.25.14的ip比如:10.25.14.12

    2024年02月07日
    浏览(38)
  • 华为云云服务器评测|详解 Nacos 安装部署

    服务器 云耀云服务器L 操作系统 CentOS 7.9 64bit | 公共镜像 JDK 64 bit JDK 1.8+ Maven Maven 3.2.x+ nacos-server 2.2.3 官方github Release 2.2.3 (May 25th, 2023) · alibaba/nacos · GitHub 百度网盘 链接:https://pan.baidu.com/s/1K8UE6iJL2ZnosUY83bUd0w  提取码:6038  使用SSH工具将包上传到服务器 解压nacos-server-2.2.3

    2024年02月09日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包