问题重现

运行新添加的模块 blade-park,运行后报无法初始化数据库

图1

这个地方的 test 是为了重现故意设置的

既然无法初始化数据库变量,那么情况猜测有两种

  1. 无法连接到 nacos
  2. 从nacos获取到的变量值不对

解决

第一种

首先验证第一个猜想,无法连接到nacos

我们先重启模块,在nacos初始化的地方打断点:

图二

我们可以看到可以正常,获取到变量值

第二种

既然能获取到变量值,再验证第二个猜想,获取到的值不对

继续在初始化地方打断点

图三

这个地方我们就能看到,获取到的值是: ...warehouse...

可是我们启动的是 park 模块,难道设置的值不对吗?

看下 nacos

图四

先说明下,这个地方的配置文件是从 warehouse 拷贝过来,然后更改的,但是发布出去的是 park,如上图

这个地方是park,但是获取到的变量值是 warehouse

最有可能的的情况是,这个地方发布了,但是代码中获取到的还是更改之前的值

为了验证猜想,我又重新更改配置,发布,然后重启模块

结果获取到的都是 warehouse 的值,难道nacos修改了,但是由于某种原因,没有真正发布成功?

我们再重启 nacos 试试

图5

再次,启动模块,我们可以看到获取到的变量正常了

验证了最初的猜想,获取到的变量值不对

导致这个问题的原因,可以参考:

https://github.com/alibaba/nacos/issues/4210

最后修改:2023 年 08 月 20 日
如果觉得我的文章对你有用,请随意赞赏