Spring cloud alibaba集成nacos 报错:[Nacos Config] config[dataId=xxx, group=DEFAULT_GROUP] is empty 解决

在使用 Spring Cloud Alibaba 集成 Nacos 时遇到 [Nacos Config] config[dataId=xxx, group=DEFAULT_GROUP] is empty 错误通常表示 Nacos 配置中心中没有找到对应 dataIdgroup 的配置信息,启动信息报错如下:

1,检查Nacos是否已经配置正确:

2,检查 application.yml

3,发现配置均正常,那么需要详细去判断一下

c.a.c.n.c.NacosConfigDataLoader          : [Nacos Config] config[dataId=test.yml, group=DEFAULT_GROUP] is empty

4,可以从报错信息入手,进入NacosConfigDataLoader查看

5,通过Debug跟踪代码,最后找到这里NacosConfigService::getConfigInner,打断点调试:

 ErrCode:-401, ErrMsg:Client not connected, current status:STARTING

 6,发现是连接不上服务端,从网上查找原因发现:

从2.x版本开始,nacos分成了两个端口:8848和9848

Nacos在升级到2.x版本后,对端口的使用进行了调整,新增了端口9848作为管理端口(Management Port),而原有的8848端口继续用于服务发现和配置管理。这一变化主要是为了区分Nacos的管理功能和服务发现、配置管理功能,提高系统的可用性和安全性。具体来说:

  • 端口8848:这是Nacos原先的端口,继续用于服务发现和配置管理。这个端口是Nacos的核心功能,用于服务的注册和发现,以及配置信息的存储和获取。
  • 端口9848:这是在2.x版本中新增的管理端口,用于Nacos的管理功能。通过这个端口,可以进行一些管理操作,比如查看集群状态、配置管理和服务管理等。这个端口的引入是为了将管理功能与核心服务发现和配置管理功能分离,以此来提高系统的整体安全性和可维护性。

需要注意的是,在使用Nacos 2.x版本时,需要确保这两个端口都已经在服务器上开放,并且在安全组和防火墙中也相应地开放这些端口,以保证Nacos能够正常工作。如果你的Spring Boot项目正在使用Nacos,也需要将项目中的server-adr端口改成9848,以适配新版本的端口变化。

7,开启9848端口和防火墙

8,修改完成之后,再次启动项目,发现是正常读取到

### 关于NB-IoT模块的技术文档和使用说明 #### NB-IoT技术概述 窄带物联网(Narrow Band Internet of Things, NB-IoT)是一种专为低功耗广域网设计的蜂窝无线通信技术。它具有覆盖范围广、连接数量多、设备成本低以及能耗少的特点[^1]。 #### 常见的NB-IoT模块 目前市场上常见的NB-IoT模块品牌包括华为海思、高通、移远通信等,其中BC系列中的BC95是一款广泛应用的NB-IoT模块。该模块支持全球频段,并具备超低功耗特性,适合各种物联网应用场景。 #### BC95模块的主要参数和技术规格 - **工作电压**: 3.8V ± 10% - **接口类型**: UART/USB/I2C/SPI等多种可选 - **天线阻抗**: 50Ω SMA接头 - **尺寸大小**: 小巧紧凑的设计便于嵌入式集成 - **网络制式**: 支持LTE Cat-NB1标准协议栈 #### STM32与BC95配合使用的具体方式 为了使STM32能够成功驱动并控制BC95模组完成数据交互操作,在硬件连接方面需注意以下几点: 1. 确保串口波特率设置一致,默认情况下两者都采用`9600bps`作为初始通讯速率; 2. 正确配置GPIO引脚用于发送唤醒信号给休眠状态下的BC95芯片; 3. 提供稳定的电源供应以维持正常运行期间所需的电流强度; 以下是基于Keil MDK编写的简单测试程序片段展示如何初始化并查询当前注册到运营商的状态: ```c #include "stm32f1xx_hal.h" UART_HandleTypeDef huart1; void SystemClock_Config(void); static void MX_GPIO_Init(void); static void MX_USART1_UART_Init(void); int main(void){ HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_USART1_UART_Init(); uint8_t cmd[]="AT\r\n"; HAL_UART_Transmit(&huart1,(uint8_t*)cmd,sizeof(cmd)-1,HAL_MAX_DELAY); while (1){ //等待响应处理逻辑省略... } } //其他外设初始化函数定义略去... ``` 上述代码仅展示了最基本的开机自检命令执行流程,实际项目开发过程中还需要编写更多复杂的业务功能模块来满足特定需求场景的要求[^3]。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值