本文中使用zookeeper做为dubbo的注册中心和元数据中心。
配置
开启元数据中心remote模式的配置有两种:
springboot应用,可以在application.yaml中添加配置
dubbo:
application:
metadataType: remote # 开启元数据中心"remote"模式,可以切换为"local"模式
metadata-report:
parameters:
"sync.report": true # 以同步的方式写入元数据,方便调试
dubbo原生应用可以在dubbo.properties中添加配置
dubbo.metadata.storage-type=remote
provider 服务注册
provider在启动的时候,会先往元数据中心写入DubboService(接口)的元数据,然后再是DubboService接口和应用服务的映射信息,最后再是写应用服务实例的元数据和服务实例节点信息。对应的zookeeper 节点路径如下:
| 数据项 | 节点路径 | 描述 |
|---|---|---|
| DubooService接口元数据 | 路径格式:/dubbo/metadata/{interface}/{version}/{group}/{side}/{application} 路径示例:/dubbo/metadata/com.saleson.api.Service/v1.0/test/provider/provider-demo |
local模式也会写,但是没有找到哪里有使用 |
| DubboService接口和应用服务的映射信息 | 路径 |

本文详细介绍了Dubbo使用Zookeeper作为注册中心和元数据中心的配置,包括远程和本地模式的设置。在启动时,Provider会向元数据中心写入服务接口元数据、映射信息和实例元数据。Consumer通过这些信息进行服务发现,实现实例级别的服务定位。远程模式下,Provider写入应用实例元数据,而本地模式下则通过直接调用Provider获取元数据。整个流程涉及ServiceDiscoveryRegistryDirectory、ServiceDiscoveryRegistory等核心组件。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



