带你读《Apache Dubbo微服务开发从入门到精通》——七、元数据中心(4)

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 带你读《Apache Dubbo微服务开发从入门到精通》——七、元数据中心(4)

《Apache Dubbo微服务开发从入门到精通》——服务治理与生态——七、元数据中心(3) https://developer.aliyun.com/article/1223683



3) 高级配置

 

完整配置参数请参考metadata-report-config

 

4) 工作原理

 

a) 服务运维元数据

 

Zookeeper基于树形结构进行数据存储,它的元数据信息位于以下节点

image.png

当version或者group不存在时,version路径和group路径会取消,路径如下

image.png

 

通过zkCli get操作查看数据

 

Provider node

image.png

 

Consumer node

image.png


b) 地址发现-接口-应用名映射

 

在Dubbo 3.0中,应用级服务发现需要能够通过interface name去找到对应的application name,这个关系可以是一对多的,即一个service name可能会对应多个不同的application name。在3.0中,元数据中心提供此项映射的能力。

 

Zookeeper

 

在上面提到,service name和application name可能是一对多的,在zookeeper中,使用单个key-value进行保存,多个application name通过英文逗号隔开。由于是单个key-value去保存数据,在多客户端的情况下可能会存在并发覆盖的问题。因此,我们使用zookeeper中的版本机制version去解决该问题。

 

在zookeeper中,每一次对数据进行修改,dataVersion都会进行增加,我们可以利用version这个机制去解决多个客户端同时更新映射的并发问题。不同客户端在更新之前,先去查一次version,当作本地凭证。在更新时,把凭证version传到服务端比对version如果不一致说明在次期间被其他客户端修改过,重新获取凭证再进行重试CAS。目前如果重试6次都失败的话,放弃本次更新映射行为。

 

Curator api.

image.png

 

映射信息位于

image.png

 

通过zkCli get操作查看数据


image.png

 

c) 地址发现-接口配置元数据

 

要开启远程接口配置元数据注册,需在应用中增加以下配置,因为默认情况下Dubbo3应用级服务发现会启用服务自省模式,并不会注册数据到元数据中心。

image.png

 

或者,在自省模式模式下仍开启中心化元数据注册

image.png

 

Zookeeper的应用级别元数据位于/dubbo/metadata/{application name}/{revision}


image.png


《Apache Dubbo微服务开发从入门到精通》——服务治理与生态——七、元数据中心(5) https://developer.aliyun.com/article/1223680

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
6月前
|
运维 监控 负载均衡
探索微服务架构下的服务治理
在当今软件开发的世界中,微服务架构已成为一种流行的设计模式。它通过将大型应用程序分解为一组小型、独立的服务来促进敏捷性和可伸缩性。然而,随着服务的增多和网络交互的复杂性提升,有效的服务治理变得至关重要。本文深入探讨了在微服务架构中实施服务治理的策略和挑战,旨在提供一套可行的解决方案,以优化系统的整体性能和稳定性。我们将讨论服务发现、配置管理、负载均衡、故障处理和重试机制等关键方面,以及它们如何共同作用以确保系统的高可用性和弹性。
|
6月前
|
Dubbo Java 应用服务中间件
性能工具之JMeter Dubbo 脚本开发
【5月更文挑战第13天】性能工具之JMeter Dubbo 脚本开发
84 3
性能工具之JMeter Dubbo 脚本开发
|
27天前
|
负载均衡 算法 应用服务中间件
深入探索微服务架构中的服务治理
【10月更文挑战第15天】深入探索微服务架构中的服务治理
26 0
|
1月前
|
监控 安全 Java
深入探索微服务架构中的服务治理
【10月更文挑战第10天】深入探索微服务架构中的服务治理
32 0
|
6月前
|
存储 运维 负载均衡
探索微服务架构下的服务治理
【4月更文挑战第30天】 在当今软件开发领域,微服务架构已经成为了解决复杂系统问题的重要技术手段。随着微服务的广泛应用,如何有效管理与治理这些分散的服务成为了开发和维护的关键。本文将探讨在微服务架构下,实现高效服务治理的策略与实践,重点分析服务发现、配置管理、负载均衡和故障处理等核心要素,旨在为读者提供一套系统的服务治理思路。
|
3月前
|
开发框架 Dubbo 应用服务中间件
微服务开发框架-----Apache Dubbo
这篇文章介绍了Apache Dubbo微服务开发框架,它提供RPC通信和微服务治理能力,支持服务发现、负载均衡和流量治理等功能,并强调了Dubbo在微服务规模化实践和企业级治理方面的优势。
微服务开发框架-----Apache Dubbo
|
3月前
|
Prometheus 监控 Java
微服务架构下的服务治理策略:打破服务混乱的惊天秘籍,开启系统稳定的神奇之门!
【8月更文挑战第7天】微服务架构将应用细分为可独立部署的小服务,提升灵活性与可扩展性。但服务增多带来治理挑战。通过服务注册与发现(如Eureka)、容错机制(如Hystrix)、监控工具(如Prometheus+Grafana)、集中配置管理(如Spring Cloud Config)和服务网关(如Zuul),可有效解决这些挑战,确保系统的高可用性和性能。合理运用这些技术和策略,能充分发挥微服务优势,构建高效应用系统。
62 1
|
4月前
|
运维 Prometheus 监控
微服务架构下的服务治理实践
【7月更文挑战第27天】在微服务架构的浪潮中,服务治理作为确保系统稳定性和高可用性的关键手段,其重要性日益凸显。本文将探讨微服务架构下服务治理的核心要素,包括服务发现、配置管理、流量控制等,并结合实例分析如何有效实施服务治理策略,以提升系统的弹性、监控能力和安全性。通过本文,读者将获得一套实用的服务治理框架,以及面对复杂服务交互时保持清晰治理视野的方法。
|
3月前
|
存储 监控 负载均衡
微服务架构中的服务治理与监控技术
【8月更文挑战第3天】微服务架构中的服务治理与监控是确保系统稳定、高效运行的重要手段。通过构建注册中心实现服务的自动注册和发现,通过部署监控工具实现对服务的全面监控,可以有效地提高系统的可靠性和可用性。未来,随着技术的不断发展,服务治理与监控技术也将不断完善和优化,为微服务架构的广泛应用提供更加坚实的支撑。
|
4月前
|
消息中间件 存储 负载均衡
微服务数据问题之Kafka作为元数据节点如何解决
微服务数据问题之Kafka作为元数据节点如何解决

推荐镜像

更多