Dubbo04【Zookeeper存储数据的数据信息】

网友投稿 670 2022-09-10

Dubbo04【Zookeeper存储数据的数据信息】

Dubbo04【Zookeeper存储数据的数据信息】

Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并推荐使用

数据存储结构

dubbo中的相关数据在zookeeper中的存储结构如下

服务提供者启动时: 向 /dubbo/com.foo.BarService/providers 目录下写入自己的 URL 地址服务消费者启动时: 订阅 /dubbo/com.foo.BarService/providers 目录下的提供者 URL 地址。并向 /dubbo/com.foo.BarService/consumers 目录下写入自己的 URL 地址监控中心启动时: 订阅 /dubbo/com.foo.BarService 目录下的所有提供者和消费者 URL 地址。

支持以下功能:

当提供者出现断电等异常停机时,注册中心能自动删除提供者信息当注册中心重启时,能自动恢复注册数据,以及订阅请求当会话过期时,能自动恢复注册数据,以及订阅请求当设置 时,记录失败注册和订阅请求,后台定时重试可通过 设置 zookeeper 登录信息可通过 设置 zookeeper 的根节点,不设置将使用无根树支持 * 号通配符 ,可订阅服务的所有分组和所有版本的提供者

具体结构说明

zookeeper中存储的dubbo数据分三级

序号

节点

说明

1

根节点

dubbo

2

一级子节点

提供服务的服务名

3

二级子节点

固定的四个子节点:分别为:

consumers、configurators、routers、providers

Consumers

存储服务消费者信息

属性

描述

application

应用名

category

类型

check

检查

dubbo

dubbo版本

interface

接口名称

methods

接口方法名

pid

进程号

side

消费端或服务端

timestamp

时间戳

Providers

存储服务提供者

[zk: localhost:2181(CONNECTED) 10] ls /dubbo/com.bobo.service.UserService/providers[dubbo%3A%2F%2F192.168.88.1%3A20880%2Fcom.bobo.service.UserService%3Fanyhost%3Dtrue%26application%3DdubboProvider%26dubbo%3D2.5.3%26group%3Ddubbo%26interface%3Dcom.bobo.service.UserService%26methods%3DsayHello%2CtestPojo%26pid%3D21088%26revision%3D1.0.0%26side%3Dprovider%26timeout%3D3000%26timestamp%3D1553650370588%26version%3D1.0.0]

属性

描述

anyhost

true

application

应用名

dubbo

dubbo版本

interface

接口名称

methods

接口方法名

pid

进程号

side

消费端或服务端

timestamp

时间戳

Routers

路由规则

/dubbo/com.example.dubbo.service.CityService/routers/route://0.0.0.0/com.example.dubbo.service.CityService?category=routers&dynamic=false&enabled=true&force=false&name=cityservice&priority=10&router=condition&rule=method+=+findCityByName+&+consumer.host+=+192.168.198.1+=>+provider.port+=+20881+&+provider.port+!=+20880&runtime=false

属性

描述

Category

类型

Dynamic

是否动态调整,false表示需要手动调整

Enabled

是否启动

Force

是否强制,false表示,如果没有匹配到则调用其它可调用的服务

Name

路由名称

Priority

优先级

Router

condition符合条件则路由

访问控制:禁止某ip访问

/dubbo/com.example.dubbo.service.CityService/routers/route://0.0.0.0/com.example.dubbo.service.CityService?category=routers&dynamic=false&enabled=true&force=true&name=com.example.dubbo.service.CityService+blackwhitelist&priority=0&router=condition&rule=consumer.host=192.168.198.1=>false&runtime=false

属性

描述

Category

类型

Dynamic

是否动态调整,false表示需要手动调整

Enabled

是否启动

Force

是否强制,false表示,如果没有匹配到则调用其它可调用的服务

Name

路由名称

Priority

优先级

Router

路由规则IP为192.168.198.1的消费者禁止访问

Configrators

负载均衡和权重信息负载均衡

/dubbo/com.example.dubbo.service.CityService/configurators/override://0.0.0.0/com.example.dubbo.service.CityService?category=configurators&dynamic=false&enabled=true&loadbalance=random

属性

描述

Category

类型

Dynamic

是否动态调整,false表示需要手动调整

Enabled

是否启动

Loadbalance

负载均衡策略

权重

/dubbo/com.example.dubbo.service.CityService/configurators/override://192.168.198.1:20880/com.example.dubbo.service.CityService?category=configurators&dynamic=false&enabled=true&weight=200

属性

描述

Category

类型

Dynamic

是否动态调整,false表示需要手动调整

Enabled

是否启动

Weight

权重

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Windows系统耍帅必会之一传送门
下一篇:Python numpy的基本操作你一般人都不会(python中range()函数的用法)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~