Nacos2作为Dubbo3的配置中心踩坑总结
本文阐述问题所使用的组件版本分别是,Dubbo:3.2.4,Nacos服务端:2.2.3,Nacos客户端:2.2.4。
在Dubbo3的官方文档中,关于如何使用Nacos作为配置中心的详细介绍参考:Nacos。
但非常沮丧的是我参照文档的描述,并没有成功将Nacos2配置成为Dubbo3项目的配置中心。
期间也看到有人在github上提出相关的问题,但似乎暂时还没有解决办法,详见:springboot+nacos+dubbo无法正常从nacos读取dubbo初始化配置。最后是参考了Nacos + Dubbo + SpringBoot 集成 注册中心 配置中心才配置成功的。
前置条件:根据Nacos官方手册部署好Nacos环境。
第一步:添加nacos-config-spring-boot-starter依赖,需要使用到其中的注解和配置。
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>0.2.12</version>
</dependency>
第二步:在项目配置文件中添加Nacos作为配置中心的参数。
nacos:
config:
bootstrap:
enable: true # 必须设置为true,否则启动报错
auto-refresh: true # 必须设置为true,自动刷新变量值才能生效
server-addr: 192.168.2.24:8848 # nacos服务器地址
data-id: consumer.yaml # 在nacos上的配置参数dataId
type: yaml # 在nacos上的配置参数格式,必须与data-id参数格式保持一致
group: DEFAULT_GROUP # 分组名称,如果使用默认值DEFAULT_GROUP,可以不用明确配置
第三步:在项目中使用注解@NacosValue读取nacos上的配置参数。
假设nacos上配置参数data-id为“consumer.yaml”,内容如下:
user:
id: 1
nickName: lisi
age: 23
则可以在Java代码中使用注解@NacosValue读取相应的配置参数,如果希望参数值动态刷新,必须设置autoRefreshed为true。
@NacosValue(value = "${user.id}", autoRefreshed = true)
private String userId;
@NacosValue(value = "${user.nickName}", autoRefreshed = true)
private String userNickName;
最后验证:只要在nacos控制台界面上修改了对应的配置参数之后,在nacos客户端就能及时刷新到最新值。
Nacos2作为Dubbo3的配置中心踩坑总结的更多相关文章
- Opencv环境配置及踩坑
Opencv环境配置及踩坑 1.什么是Opencv OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux.Windows.Android和[ ...
- Pytorch及Yolov5环境配置及踩坑
Pytorch及Yolov5环境配置及踩坑 1.何为Yolov5 yolo是计算机视觉方面用来进行目标检测的一个十分出名的开源框架,我搜不到官方的对此概括性的定义,但实际上也没什么必要,更重要的是会使 ...
- React Native Android配置部署踩坑日记
万事开头难 作为一只进入ECMAScript世界不久的菜鸟,已经被React Native的名气惊到了,开源一周数万星勾起了我浓烈的兴趣.新年新气象,来个HellWorld压压惊吧^_^(故意少打个' ...
- vue配置环境踩坑
Vue 环境配置踩坑 目录 Vue 环境配置踩坑 windows下cnpm -v :无法将"cnpm"项识别为 cmdlet.函数.脚本文件或可运行程序的名称. windows下c ...
- 记录一个 spring cloud 配置中心的坑,命令行端口参数无效,被覆盖,编码集问题无法读取文件等.
spring cloud 配置中心 结合GIT , 可以运行时更新配置文件.发送指令让应用重新读取配置文件. 最近在测试服务器实现了一套,结果CPU 实用率暴增,使用docker compose启动 ...
- spring零配置AOP踩坑指南
今天照着书,试着配了AOP(全注解),结果踩了各种坑,后来参考书附带的源码,终于走出来了,现在总结一下 除了spring的jar包以外,还需要导入以下包: 1.Spring核心配置文件beans.xm ...
- 小白linux安装php 5.6+nginx配置(踩坑版)
因为要搭建个知识库,直接用wordpress,这前提是得先装php,实在不喜欢XAMPP,所以自己折腾,没想到php这一来还不少啊,从头到尾折腾了一个小时多.记录下主要的流程和遇到的坑. 首先官网下载 ...
- Flutter开发环境(Window)配置及踩坑记录
Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生 UI 的移动 SDK.Flutter 兼容现有的代码,免费且开源,在全球开发者中广泛被使用. F ...
- seg代码配置的踩坑记录
01. SEGMENTATION FAULT 正在配置OCNET的代码,在自己的本地运行没有任何问题,但是在服务器上一直报错:SEGMENTATION FAULT 这属于很概括的报错,无法直接看明白到 ...
- 使用 jest 测试 react component 的配置,踩坑。
首先安装依赖 npm i jest -g npm i jest babel-jest identity-obj-proxy enzyme enzyme-adapter-react-15.4 react ...
随机推荐
- ext4 扩容磁盘的方式方法
ext4 扩容磁盘的方式方法 背景 前期一直处理xfs,lvm磁盘的扩容 很少处理ext4的磁盘扩容 今天发现自己竟然对这一块有盲区. 晚上回家自己学习研究了会儿, 发现知识点还挺多 所以总结一下. ...
- 【转帖】千亿参数大模型首次被撬开!Meta复刻GPT-3“背刺”OpenAI,完整模型权重及训练代码全公布
https://cloud.tencent.com/developer/article/1991011 千亿级参数AI大模型,竟然真的能获取代码了?! 一觉醒来,AI圈发生了一件轰动的事情-- Met ...
- [转帖]一次操作系统报错OutOfMemory Error的处理记录
在启动公司内嵌的tomcat容器时出现报错, 如下: # There is insufficient memory for the Java Runtime Environment to contin ...
- Redis Cluster in K3S
Redis Cluster in K3S 学习资料 https://www.cnblogs.com/cheyunhua/p/15619317.html https://blog.csdn.net/cq ...
- 简单的获取ESXi服务器上面开启了多少个vCPU的办法
开启ssh 执行命令 esxcli vm process list |grep Config |cut -b 17- |xargs cat |grep numvcpus |cut -d " ...
- Spring Cloud 系列:基于Seata 实现 XA模式
https://seata.io/zh-cn/docs/user/mode/xa https://seata.io/zh-cn/docs/dev/mode/xa-mode XA 规范 是 X/Open ...
- Java中YYYY-MM-dd在跨年时出现的bug
先看一张图: Bug的产生原因: 日期格式化时候,把 yyyy-MM-dd 写成了 YYYY-MM-dd Bug分析: 当时间是2019-08-31时, public class DateTest { ...
- python快速入门【五】---- 面向对象编程、python类
python入门合集: python快速入门[一]-----基础语法 python快速入门[二]----常见的数据结构 python快速入门[三]-----For 循环.While 循环 python ...
- PE结构:VA&RVA&FOA 转换复习
复习一下,不然会忘 1.imagebase 映像基地址 ,默认是0x400000 2.va 虚拟地址,载入OD后的地址,已经映射到内存的地址. 计算实际装入地址 VA imagebase (映像基址) ...
- Python 使用sigthief签发证书
Windows 系统中的一些非常重要文件通常会被添加数字签名,其目的是用来防止被篡改,能确保用户通过互联网下载时能确信此代码没有被非法篡改和来源可信,从而保护了代码的完整性.保护了用户不会被病毒.恶意 ...