跳到主要内容

对配置中心元数据的填充

在介绍 link-flow 的业务功能时,提到了能够将配置中设置的组、版本、区域设置到自己的服务中,作为服务元数据

spring:
application:
name: consumer-service
cloud:
link-flow:
metadata:
group: test-group
version: 1.0
zone: test-zone-1

这就需要有从配置项读取到对应的配置然后通过注册中心放入到服务元数据的操作,而在不同的注册中心Nacos和Eureka对元数据的操作是不同的,这就需要将两者进行统计

元数据后置处理器

不同的注册中心虽然操作起来不同,但肯定都有一个元数据对象属性,要做的就是把配置填充到元数据对象属性中,对于这种原有框架已经创建好的对象,但我们自己业务还要修改属性的操作,用Spring的后置处理器来实现是很合适的

关于Spring后置处理器的详细讲解,请跳转到 技术精华讲解-Spring的后置处理器是什么 章节

在设计之前,还要先梳理好细节,处理要借助后置处理器外,还需要一些别的东西,因为要读取 SpringBoot 配置,所以还需要读取对象,SpringBoot提供了是 Environment,不同的注册中心都需要此工具对象,所以还需要设计分层,把这个都需要的对象 Environment 方法公共部分,具体的填充实现放到各自具体实现中,对于这种设计依然是 模版模式 最适合了