Dubbo源码解析(十四) Dubbo 2.7.x 新功能之元数据中心

本文介绍了Dubbo 2.7版本引入的元数据中心,旨在解决之前版本中元数据存储和传输的问题。元数据中心将非服务治理的数据分离,减轻了注册中心的负担。内容包括元数据的概念、使用方法(如XML配置和Java配置)、详细信息及其在服务网关泛化调用、服务监控和测试框架等应用场景,以及未来可能的自定义信息扩展。
摘要由CSDN通过智能技术生成

元数据

元数据是什么?

元数据定义为描述数据的数据,在服务治理中,例如服务接口名,重试次数,版本号等等都可以理解为元数据。

在 2.7 之前,元数据一股脑丢在了注册中心之中,这造成了一系列的问题:

推送量大 -> 存储数据量大 -> 网络传输量大 -> 延迟严重

生产者端注册 30+ 参数,有接近一半是不需要作为注册中心进行传递;消费者端注册 25+ 参数,只有个别需要传递给注册中心。有了以上的理论分析,Dubbo 2.7 进行了大刀阔斧的改动,只将真正属于服务治理的数据发布到注册中心之中,大大降低了注册中心的负荷。

同时,将全量的元数据发布到另外的组件中:元数据中心。

----------------------------------以上摘自http://dubbo.apache.org/zh-cn/blog/dubbo-27-features.html----------------------------------------

首先在之前的时候,虽然他们说是把很多的注册信息都注册到了注册中心,但是远远还不满足于我们的需求,以至于我们在开发dubbo网关的时候,不能直接从注册中心中读取到这个东西。从而网关对泛化调用也无能为力(当然后续我们经过扫描的做了这个处理,但是不太优雅)。

现在有了元数据中心之后,首先由两个问题,怎么使用以及使用后的带来的价值?

ps: 上次在杭州的 dubbo Meetup 讲的三大中心时并没有什么感觉这些功能的应用场景,今天探析了它的实现方式之后,感觉异常的强大。

使用方式

目前支持redis和 Zookeeper 两种,下面示例使用的是Zookeeper

配置项 解释
address 注册地址
username 用户名
password 密码
timeout 超时时间
group 分组
retryTimes 重试次数
retryPeriod 重试间隔
cycleReport 周期,默认每天
syncReport 是否异步,默认异步
  1. xml 配置
    <dubbo:metadata-report address="zookeeper://127.0.0.1:2181"/>
  1. java config 方式
        ServiceConfig<
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值