【Dubbo】Dubbo2.7新功能 --配置中心、元数据中心
1.配置中心
配置中心提供了动态配置功能,是 Dubbo2.7 版本引入的一个新的功能。
- 简单来说,就是把 dubbo.properties 中的属性进行集中式存储,存储在其他的服务器上。
- 目前 Dubbo 能支持的配置中心有:apollo、nacos、zookeeper
其实,从另外一个角度来看,我们之前用 zookeeper 实现服务注册和发现,本质上就是使用 zookeeper 实现了配置中心,这个配置中心只是维护了服务注册和服务感知的功能。在 2.7 版本中 Dubbo 对配置中心做了延展,出了服务注册之外,还可以把其他的数据存储在 zookeeper 上,从而更好的进行维护。
1.在 dubboadmin 添加配置
应用名称可以是 global,或者对应当前服务的应用名
- 如果是 global 表示全局配置, 针对所有应用可见配置的内容
- 如果是应用名,则只针对某一服务
PS:实际就是 dubbo.properties 中配置的基本信息。只是同意存储在了 zookeeper上
2.本地的配置文件添加配置中心
在 application.properties 中添加配置中心的配置项
dubbo.config-center.address=zookeeper://43.107.136.120:2181
dubbo.config-center.app-name=spring-boot-provider # 要与application.name相同
注:为了可靠性(配置中心挂了还要配置),存在于配置中心上的配置项本地仍然需要配置一份。所以下面这些配置一定要加上。否则启动不了。
dubbo.application.name=spring-boot-provider
dubbo.registry.address=zookeeper://43.107.136.120:2181
dubbo.scan.base-packages=com.xupt.yzh.dubboclient
3.配置的优先级
引入配置中心后,两份配置的优先级就需要关注了
- 默认情况下,外部配置的优先级最高, 也就是配置中心上的配置会覆盖本地的配置
- 当然也可以调整优先级 dubbo.config-center.highest-priority=false
配置中心原理
默认所有的配置都存储在/dubbo/config节点,具体节点结构图如下。
- namespace:用于不同配置的环境隔离
- config:Dubbo 约定的固定节点,不可更改,所有配置和服务治理规则都存储在此节点下
- dubbo/application:全局配置(dubbo是默认group值)、应用级别配置(application对应应用名)
- dubbo.properties:此节点的 node value 存储具体配置内容
2.元数据中心
在 Dubbo2.7 之前,所有的配置信息,比如服务接口名称、重试次数、版本号、负载策略、容错策略等等,所有参数都是基于 url 形式配置在 zookeeper 上的。这种方式会造成一些问题 :
- url 内容过多,导致数据存储空间增大 ,而注册中心(zookeeper等)的内存空间是有限的
- url 需要涉及到网络传输,数据量过大会造成网络传输过慢
- 网络传输慢,会造成服务地址感知的延迟变大,影响服务的正常响应
服务提供者这边的配置参数有30多个,有一半是不需要作为注册中心进行存储的。而消费者这边可配置的参数有 25 个以上,只有个别是需要传递到注册中心的。所以,在 Dubbo2.7 中对元数据进行了改造,简单来说:
- 把属于服务治理的数据发布到注册中心
- 其他的配置数据统一发布到元数据中心。这样一来大大降低了注册中心的负载。
元数据中心配置
元数据中心目前支持 redis 和 zookeeper。官方推荐是采用 redis,因为 redis 本身对于非结构化存储的数据读写性能比较高。当然,也可以使用 zookeeper 来实现。
在配置文件中添加元数据中心的地址:
dubbo.metadata-report.address=zookeeper://43.107.136.120::2181
dubbo.registry.simplified=true #注册到注册中心的URL是否采用精简模式的 (与低版本兼容)
【Dubbo】Dubbo2.7新功能 --配置中心、元数据中心相关推荐
- macOS 新功能:【控制中心】让你的 Mac 系统更方便!
macOS 11 中新加入的功能 - [控制中心]. 虽然说是 Mac 新加入的功能,不过使用 iPhone 和 iPad 的朋友其实早就用到这个功能了. [控制中心]是将之前散落在系统各处的控制功能 ...
- Dubbo Admin服务测试功能
基于Dubbo2.7的元数据,Dubbo Admin实现了服务测试功能,可以通过泛化调用,在控制台上调用真实的服务提供者 使用方式 部署服务提供者: 可以在这里下载demo,此工程基于spring b ...
- Spring Cloud Alibaba配置实例nacos+sentinel+dubbo实行服务注册、配置中心、熔断限流
通过Spring Cloud Alibaba相关组件nacos+sentinel+dubbo实行服务注册.配置中心.熔断限流等功能 1.本机安装nacos和sentinel-dashboard服务端 ...
- 全链路灰度新功能:MSE上线配置标签推送
为什么需要配置标签推送 从全链路灰度谈起 在微服务场景中,应用的灰度发布迎来了新的挑战.不同于单体架构中将应用整体打包即可发布测试版本,微服务应用往往由多个服务组合而成.这些服务通常由不同的团队负责, ...
- 单图说TDSQL;OceanBase 2.2 事务引擎核心功能;穿云箭2.0版发布;RMAN DUPLICATE配置19C DG;外键上有无索引的影响;MySQL8.0 索引新功能;GaussDB C
摘要:墨天轮数据库周刊第16期发布啦,每周1次推送本周数据库相关热门资讯.精选文章.干货文档. 热门资讯 1.英国电信企业Virgin Media营销数据库配置错误 导致90万客户信息泄露 [摘要]英 ...
- datastage配置jdbc_Datastage 11.5新功能介绍----Hive Connector
Question Datastage是否有专门的组件支持Hive呢? Answer 在最新的IBM Information Server 11.5.0.1中,新增了一些组件和功能,其中比较重要的就是H ...
- Amazon EKS 新功能上线——助你降低配置和管理复杂度
我们在与客户沟通过程中了解到,一些从基于 EC2 自建的 Kubernetes 迁移到使用 Amazon Elastic Kubernetes Service (Amazon EKS) 托管服务的客户 ...
- 阿里云服务网格 ASM 发布新功能:提供更精细化的服务治理能力
简介:服务网格作为服务间通信的基础设施层,吸引了越来越多的用户使用.阿里云服务网格 ASM 将继续为开发者带来便利.9月1日,阿里云服务网格( ASM )产品经理问思为大家解读近期 ASM 发布的一些 ...
- Java Web学习总结(41)——Java EE 8 新功能展望
Java EE 7简介 Java EE 作为一个企业应用的部署平台,具有很好的健壮性.能够提供强大的 Web 服务且非常易于部署.这些年来,通过其不断发展,它已大大简化了以服务器为中心的应用程序的开发 ...
最新文章
- 独家 | 对抗图像和攻击在Keras和TensorFlow上的实现
- 修完 Bug 后脑袋灵光一现 | 每日趣闻
- Unity3D手机斗地主游戏开发实战(03)_地主牌显示和出牌逻辑
- java 命名代码检查-注解处理器
- 【Android View基础】View中几个容易混淆的距离及坐标量
- c++ 基本数据类型字节数
- 冲刺第八天 12.4 TUE
- 单词九连猜python编程_python实现猜单词游戏
- linux硬盘转windows7,记——第一次上手UEFI电脑,将mbr硬盘的Windows7和Linux转为gpt+uefi启动...
- 记6分的交通违法行为
- vue中组件的导出导入_5.2 vue中 keep-alive 组件的作用,详细解释keep-alive使用方法...
- 无需安装配置,多操作系统支持数据库及性能测试
- c#命名规范(转载)
- c语言qq聊天刷屏代码大全,QQ聊天刷屏脚本 达人分享技巧
- 之前做设计收集的部分网站
- Docker镜像下载到本地及恢复
- win10 休眠唤醒 电源_一劳永逸解决WIN10所有睡眠问题
- 2022年对于李一男是关键的一年,这也将决定他的社会地位
- 【云原生 | 12】Dockerfile语法详解及举例
- 身家破亿!86版「红孩儿」拒绝出道成学霸,已是中科院博士,名下52家公司
热门文章
- 2022-04-21 Omnet学习笔记(一)
- matlab中的脚本与函数、自相关函数corr,xcorr,corrcoef的应用
- 802.11a/b/g/n无线协议详解
- python:绘制直方图(Histogram)
- AD18官方原器件库下载及导入方法
- WebGIS入门--如何做一个简单的校园地图服务网站
- 何时对固态盘运行低级格式化或擦除以及使用的工具
- 如何在SteamVR 2.x 中使用自定义手部模型
- Context Path + servlet path + path info
- 全国邮编前缀归属省及其备注整理,血的代价整理输出,供大家参阅