Nacos服务列表有服务,但是配置列表不起作用。

文章讲述了在使用SpringCloudAlibaba的Nacos配置中心时遇到的问题,重点在于POM文件的依赖配置不当导致配置不生效。作者分享了解决思路,包括检查配置名称、范围、版本、刷新机制、服务读取配置以及POM文件的正确配置。

想要重新再写一下springcloud alibaba 的组件配置,再另一个服务renren-product引入,nacos的注册发现和配置中心。前面都很顺利但是修改配置中心配置的时候不起作用!!! 另一个服务代码相同但是起作用了,对比了很多次,最终发现是poom文件的依赖问题!! 分享一下解决思路。

bug现场

请求端口
在这里插入图片描述
controller代码
在这里插入图片描述
application.properties
在这里插入图片描述
bootstrap.properties
在这里插入图片描述

nacos配置中心
在这里插入图片描述
具体配置
在这里插入图片描述

nacos服务列表
在这里插入图片描述
服务列表删除后又能重新生成一个实例对象,就说明加载nacos没问题。

解决思路

如果在 Nacos 服务列表中看到了 “gulimall-product” 服务,但 Nacos 配置中心对其配置没有作用,可能存在以下一些情况:

  1. 配置名称不匹配: 确保在 Nacos 配置中心中的配置项的名称(Data ID)与 “gulimall-product” 服务的应用名称或 Group 名称匹配。默认情况下,Nacos 使用服务名称作为 Group 名称,因此 Data ID 应该是类似于 gulimall-product.properties 的形式。

  2. 配置生效范围: 确保配置项的生效范围正确。在 Nacos 中,配置项可以设置为全局配置或特定服务的配置。如果配置项的生效范围设置为全局,它将应用于所有服务,而不仅仅是 “gulimall-product”。

  3. 配置版本: 检查配置项的版本是否与 “gulimall-product” 服务的版本匹配。如果你在配置项中指定了版本,确保服务也使用相同的版本。

  4. 配置刷新: 如果你在 Nacos 配置中心中修改了配置,但没有触发配置的刷新,那么服务可能仍然使用之前的配置。确保配置的刷新机制已经正确配置,并且服务能够接收到配置的更改通知。

  5. 服务的配置读取: 确保 “gulimall-product” 服务在启动时正确地读取了配置项。如果服务没有正确配置配置中心的客户端或未正确处理配置,那么它可能不会使用配置中心的配置。

  6. 配置项的优先级: 如果在服务的配置中已经定义了某些配置,这些配置可能会覆盖来自配置中心的配置。确保没有在服务本地配置中硬编码了与配置中心配置冲突的值。

  7. Nacos 配置中心的问题: 有时 Nacos 配置中心本身可能出现问题,导致配置无法正确发布或生效。检查 Nacos 配置中心的状态和日志以查看是否存在任何问题。

如果以上情况都排除并且问题仍然存在,建议检查服务的日志以查看是否有有关配置读取和生效的错误或警告信息。同时,确保服务已正确集成 Nacos 配置中心的客户端,并且在应用启动时能够成功连接到 Nacos 服务器并获取配置。如果仍然无法解决问题,可能需要详细查看服务的代码和配置,以确定问题的根本原因。

POM文件

因为product和coupon服务共同依赖了,common服务。所以就没往pom文件配置的方面想。后面是在没办法,就是一行行对比Maven依赖!!最终发现product服务没有依赖这个spring-cloud-starter-bootstrap,这个包。

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>

恶心的是因为在application.properties中设置了,注入的值。所以不会报错!!

启动日志排查

在这里插入图片描述
配置文件不起作用从启动日志框起来的地方也能看到。

完整pom文件

<?xml version="1.0" encoding="UTF-8"?>
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值