如题:
我们都知道,spring cloud config消息总线分服务端(简称server)和客户端(简称client),如果我们要对client的一些配置信息做修改时,只需要在git上修改对应client的配置文件,然后使用Post方式调用server的/bus/refresh?destinace=clientName:clientPort即可达到热更新的效果,但是我在使用过程中发现,并非client的所有配置都可以使用这样的方式进行热更新,所以,到底可以更新client的哪些配置我目前还是迷糊中的。
我现在有一个demo,server的配置文件或者我配置的是git,client的环境有两个版本,一个是开发版,即dev,还有一个是测试版本,即test,这两个版本中,其中有一个配置不一样,那就是数据库的连接,开发版本有开发数据库,测试版本有测试数据库,所以我希望使用spring cloud config server来进行client的数据库配置更新,client项目中只一个bootstrap.yml文件,里面只配置了eureka,zipkin,config的相关信息,这部分是不会变的,client的数据库配置和其他配置是放在git上的,当我在git上修改了client的数据库配置,比如url,然后调用server的/bus/refresh接口,观察到client确实是刷新了spring.datasource.url信息,项目本身没有报错,但是当我通过client的接口获取数据库名的时候,发现获取到的还是refresh之前的数据库名,并非我在git上配置的数据库,配置jdbcTemplate是直接使用springboot默认的配置,没有手动申明druidDataSource和jdbcTemplate(经过测试就算手动配置也是一样的结果),我已经在dao层加入了@RefreshScope注解
请问各路大神,这个问题如何解决呢?
另外还有一个问题,我想把logback的配置文件也放到git上,然后通过server来refresh client的logback日志配置信息,这个又应该如何实现?
1条回答 默认 最新
悬赏问题
- ¥15 宝塔面板一键迁移使用不了
- ¥15 求一个按键录像存储到内存卡的ESP32CAM代码
- ¥15 如何单独修改下列canvas推箱子代码target参数?,插入图片代替其形状,就是哪个绿色的圆圈每关用插入的图片替代
- ¥20 四叉树的创建和输出问题
- ¥15 javaweb连接数据库,jsp文件加载不出来
- ¥15 matlab关于高斯赛德尔迭代的应用编撰。(相关搜索:matlab代码|迭代法)
- ¥15 损失匹配问题,求解答
- ¥15 3500常用汉字书法体检测数据集下载
- ¥15 odoo17在制造模块或采购模块良品与次品如何分流和在质检模块下如何开发
- ¥15 Qt音乐播放器的音乐文件相对路径怎么写