微服务----nacos配置及简单使用

目录

什么是nacos

项目在nacos上进行注册

注入nacos依赖

配置application.yml文件

nacos写入配置文件

首先,还是需要导入依赖

然后在nacos中编写配置文件

prod是我自定义的一个命名空间,在这里面进行配置文件编写~

启动类上加上注解

编写PatternParameter类

[​编辑 配置文件热更新](#编辑 配置文件热更新)


从本篇博文开始的后几篇都是有关微服务的学习,本博主最近刚学完微服务想记录一下自己的学习情况,因此接下来的几篇文章都是根据我的项目实际而言的,希望也能帮助到各位~

这篇文章现代大家简单的了解nacos是干嘛的以及在项目中如何进行使用~

什么是nacos

Nacos 提供对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。Nacos 支持传输层 (PING 或 TCP)和应用层 (如 HTTP、MySQL、用户自定义)的健康检查。 对于复杂的云环境和网络拓扑环境中(如 VPC、边缘网络等)服务的健康检查,Nacos 提供了 agent 上报模式和服务端主动检测2种健康检查模式。Nacos 还提供了统一的健康检查仪表盘,帮助您根据健康状态管理服务的可用性及流量。简单来说nacos就是注册服务用的。 具体解释请看官网文档:Nacos 架构

由于刚开始接触,所以我们这里不讲太多原理,先来搞清楚怎么使用,接下来我将默认你的电脑中已经有了nacos且已经启动,没有的请看下面这篇文章:nacos下载(详解版)

项目在nacos上进行注册

注入nacos依赖

java 复制代码
 <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

配置application.yml文件

其中server-addr后面的地址是我本地的nacos地址,如果你的nacos是安装在linux上面的就写上你linux的ip。

以上就是配置nacos的具体过程,还是很简单的是吧~

当然,如果你要实现在nacos配置配置文件,也是可以的~

nacos写入配置文件

首先,还是需要导入依赖

java 复制代码
       <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.0.1</version>
        </dependency>
        <!--        nacos配置管理依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
          <!--nacos的管理依赖-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2021.0.5.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

然后在nacos中编写配置文件

prod是我自定义的一个命名空间,在这里面进行配置文件编写~

以上部分分别是nacos里面和我的idea里面对应的配置截图,其中每一个箭头对应的部分必须一致,不然很可能会找不到你在nacos中配置的文件信息,当然nacos的Data ID明明是有一定规则的,名字默认为:{prefix}-{spring.profiles.active}.${file-extension}

prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置(即配置在nacos上的服务名)。

spring.profiles.active 即为当前环境对应的 profile,详情可以参考 Spring Boot文档。 注意:当 spring.profiles.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 {prefix}.{file-extension}

file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。

启动类上加上注解

编写PatternParameter类

其中的prefix="pattern"是我们在nacos的配置文件中的配置的前缀

然后再控制器中我们使用@Autowired注解注入这个类就可以进行使用啦~

配置文件热更新

当然,我们可能会时不时修改配置文件,但是修改后需要重启项目,对于部署在服务器上的项目而言是行不通的,所以我们需要对配置文件进行热更新,具体做法如下:

没错,只需要加入@RefreshScope注解就可以啦~

相关推荐
一只小青团3 小时前
Python之面向对象和类
java·开发语言
qq_529835353 小时前
ThreadLocal内存泄漏 强引用vs弱引用
java·开发语言·jvm
落笔画忧愁e3 小时前
扣子Coze飞书多维表插件添加数据记录
java·服务器·飞书
秋千码途6 小时前
小架构step系列08:logback.xml的配置
xml·java·logback
飞翔的佩奇6 小时前
Java项目:基于SSM框架实现的旅游协会管理系统【ssm+B/S架构+源码+数据库+毕业论文】
java·数据库·mysql·毕业设计·ssm·旅游·jsp
LCG元6 小时前
Windows实时内核驱动的数据捕获接口:高精度时钟与零拷贝的架构剖析
windows·架构
时来天地皆同力.6 小时前
Java面试基础:概念
java·开发语言·jvm
找不到、了6 小时前
Spring的Bean原型模式下的使用
java·spring·原型模式
阿华的代码王国7 小时前
【Android】搭配安卓环境及设备连接
android·java
YuTaoShao7 小时前
【LeetCode 热题 100】141. 环形链表——快慢指针
java·算法·leetcode·链表