关于微服务下的不同服务之间配置不能通用的问题

问题引入

现有两个服务,一个是 A 服务,一个是 B 服务,并且这两个服务都需要使用 mysql。

现 B 服务中引入了 A 服务的依赖,在 A 服务中添加了 mysql 的相关配置,那么这时就有一个问题:既然 B 已经引入了 A 的依赖,是不是 B 就不需要添加 mysql 的配置了呢?

知识补充

配置的作用域

  • 配置的作用域是服务级别的
  • 配置与代码是分离的,配置信息与服务一样,是独立的,即使引入了该服务的依赖,该服务的配置也不会在别的服务中生效
  • Spring Boot / Cloud 只会加载自己服务中的配置信息,即使引入了别的服务的依赖,也不会加载该服务的配置信息

依赖中包含了服务的哪些信息

当引入了某个服务的依赖,就相当于引入了这个服务的类文件、接口定义、工具类等,但不包含配置文件

问题讲解

即使 B 引入 A 的依赖,但由于依赖中不包含配置文件,这也就导致,即使 A 服务中已经添加了 mysql 的配置,但是 B 服务是没有办法加载到 A 服务的配置信息的,这就导致,B 服务没有办法正常使用 mysql。

解决思路

若 B 服务也需要使用 mysql,就需要将 mysql 的相关配置也添加到 B 服务中,这样 B 服务在启动时,就可以加载到 mysql 的配置信息,也就能正常使用 mysql 服务了。

相关推荐
晚霞的不甘14 分钟前
CANN × ROS 2:为智能机器人打造实时 AI 推理底座
人工智能·神经网络·架构·机器人·开源
jiet_h33 分钟前
后端 Verticle 架构实战:用 NeonBeeDeployable 推送一条通知
架构
程序猿追38 分钟前
CANN ops-math仓库解读 数学算子的底层支撑与高性能实现
人工智能·架构
芷栀夏1 小时前
从 CANN 开源项目看现代爬虫架构的演进:轻量、智能与统一
人工智能·爬虫·架构·开源·cann
程序猿追1 小时前
深度剖析 CANN ops-nn 算子库:架构设计、演进与代码实现逻辑
人工智能·架构
程序猿追2 小时前
深度解码昇腾 AI 算力引擎:CANN Runtime 核心架构与技术演进
人工智能·架构
晚霞的不甘2 小时前
CANN 编译器深度解析:TBE 自定义算子开发实战
人工智能·架构·开源·音视频
Zfox_2 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 融合计算、Cube Unit Tiling 机制与编程范式实践
docker·云原生·容器·eureka
程序猿追2 小时前
昇腾算力之锚:深度解读 CANN ascend-toolkit 异构计算架构与工程实践
架构
一枕眠秋雨>o<2 小时前
深入 CANN ops-nn:昇腾 NPU 算子开发的工程化实践与架构哲学
架构