Dubbo + ZooKeeper 的服务发现最佳实践|学习笔记(三)

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 快速学习 Dubbo + ZooKeeper 的服务发现最佳实践

开发者学堂课程【Dubbo + ZooKeeper 的服务发现最佳实践Dubbo + ZooKeeper 的服务发现最佳实践】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/1012/detail/15069


(2)、程序

这个程序其实很简单,其实就是一个 Dubbo 的一个 providers 跟 consumers,然后它们有分别对应着自己的一个配置文件。然后这里的 pom 里面也依赖也很简单,就是依赖的一个 Dubbo,现在2.7版本里最新的版本2.7.5。然后另外一个依赖就是 ZooKeeper把这两个依赖加上就 OK 了。

图片15.png

然后看一下 providers 的写法。下图providers 的一个配置文件,

图片16.png

然后,这里跟 ZooKeeper 集成,唯一要改的其实就是下图标签。

图片17.png

然后其它的写法就是正常的怎么使用 Dubbo 就这么配就好,地址的地方就配ZooKeeper 的地址连接串。

可以看一下才购买的集群已经好了。

图片18.png

之后就把 providers 去连到这台器上面去,然后联的方式就用下图所示的外网。

图片19.png

用提供的 aliyuncs.com 去连。只要把这个写在这里就行。这样已经配置好了。

图片20.png

这里有个问题,就是因为默认出来的公网是没有安全设置的。做的白名单设置的,也就是说现在实际上是通过这个地址传输方法不通的。可以做个实验。是拿不到数据的。

图片21.png

图片22.png

但是把它全部删掉,其实默认就是开启。就可以从 ZooKeeper 上面获取到数据了。

图片23.png

开启之后把地址填把阿里巴巴零默认端口写好,然后是服务名,实现类

图片24.png

定义的接口,定义了一个 say hello 的一个接口

图片25.png

就是实现的话就是把录参给它打出来。也非常简单

图片26.png

然后可以看见到下面就是的启动程序,

图片27.png

载 providers 的插件文件,然后就可以启动就可以把 hello service 这个服务给它注册到的 ZooKeeper 上面去。可以看一下 ZooKeeper 它的数据!数据里面其实是没有任何数据的。

图片28.png

ZooKeeper 的一个默认的一个 ZooKeeper 的节点

providers 起来的时候。然后可以看一下。它会往 ZooKeeper 里面去写。它会在providers 里去把它的这个地址信息写进来。

图片29.png

它写的是它在 providers 下面。把自己的IP跟开启的端口写到 ZooKeeper 上面去了。后面这些就是它的一个调用式一些参数

图片30.png

20880已经开了。

图片31.png

下图 providers 已经开好。

图片32.png

接下来就 consumers 给它提起来。consumers 提起来,它到时候会在这里创建一个 consumers 的一个节点,然后 consumers 也会把自己的信息写到子节点下面。配方也一样。拷回来了之后,它就可以连上 ZooKeeper 了。

图片33.png

然后 consumers 里面的逻辑就是把加载提起来,然后远程拿到这个方法。已经打印出来了,就说明它调用成功了,

图片34.png

然后这时候看一下再。它这里其实是把 consumer 给它注册进来。下图是consumer 注册的一个信息。

图片35.png

图片36.png

它是通过编码放到 ZooKeeper 上面去的。一个简单的一个 Dubbo 注册订阅的一个微服务就已经已经写好了,就已经演示好了。

3.控台功能

然后大概眼看一下这里的一个它的一些功能。

(1)、可用区

购买的那是一个三节点的一个 ZooKeeper 集群。然后现在它在可用区,是在 ABC三个区的,可用区是强制打散的。任何一个可用区挂掉,都不会影响另外两台机器。机器它大一半是可以正常提供服务的。

图片37.png

(2)、数据管理

然后数据管理里面,有一个重置数据的一个功能!就是说把一个集群工作压测,再往 ZooKeeper 里面写了大量的一些数据,几百兆,如果要删,就要人上去删,然后这边提供了一个重置数据的功能,就直接去点重置,它就会把数据全部删掉。这也是非常方便的。

图片38.png

(3)、观测

观测。这是集成的 monitoring center,会有大概20多个监控指标。QPS,TPS。它的实时性是非常好的。

图片39.png

比如在这里边不断的那个去写节点。

图片40.png

让它去查。基本上30秒它的 qps 值就上来了,就显示出来是有变化的。这个是观测,然后这里,还有一些资源监控,下图所示点是刚才购买的时候就已经连续采集数据了。

图片41.png

(4)、参数设置

参数设置,其实就是 rool center 的配置,基本上平时要想要设minsessiontimeout。

图片42.png

基本上点保存并重启。就等着集群在这边滚动升级就好。

演示大概就是到此结束了


四、ZooKeeper 后续预告

1.功能规划

然后。其它就是主题部后续的一个预告,就说后续专业版出来的,之后还会持续的不断地去迭代跟演进。提供一些有更有价值的一些功能的服务。后面会推出推送轨迹;服务管理;日志审计等高阶的一些功能。

还会对 ZooKeeper 的数据进行多点的一个备份。最大限度的保证数据安全。

现在JK大家都知道它是一个 essay 模式的一个强一致的 Cap 模式,它是。但是为了保证强一性是牺牲了一定的东西。后面会对 ZooKeeper 进行一个 AP 的模式的一个改造。如果你不是期望那么强一致的场景下

可以去使用它,然后预计整体的系统性能大概会提升10倍。后续的话还会去发布一个 ZooKeeper 电子书,会有一些日常的一些使用案例跟进。居家实践在里面。能够让你在日常应用中避免去踩一些坑。

2.后续分享

如果想要学习的一些同学可以去关注,然后通过就是 ZooKeeper 去切入到达数据跟微服务的一些领域。

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
2月前
|
安全 应用服务中间件 API
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2
|
1月前
|
存储 负载均衡 监控
dubbo学习一:zookeeper与dubbo的关系,下载安装启动zookeeper(解决启动中报错)
这篇文章是关于Apache Dubbo框架与Zookeeper的关系,以及如何下载、安装和启动Zookeeper的教程,包括解决启动过程中可能遇到的报错问题。
51 3
dubbo学习一:zookeeper与dubbo的关系,下载安装启动zookeeper(解决启动中报错)
|
21天前
|
Dubbo 应用服务中间件 Apache
Dubbo 应用切换 ZooKeeper 注册中心实例,流量无损迁移
如果 Dubbo 应用使用 ZooKeeper 作为注册中心,现在需要切换到新的 ZooKeeper 实例,如何做到流量无损?
17 4
|
1月前
|
监控 Dubbo Java
dubbo学习三:springboot整合dubbo+zookeeper,并使用dubbo管理界面监控服务是否注册到zookeeper上。
这篇文章详细介绍了如何将Spring Boot与Dubbo和Zookeeper整合,并通过Dubbo管理界面监控服务注册情况。
79 0
dubbo学习三:springboot整合dubbo+zookeeper,并使用dubbo管理界面监控服务是否注册到zookeeper上。
|
6月前
|
Dubbo Java 应用服务中间件
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
|
27天前
|
Dubbo Java 应用服务中间件
Spring Cloud Dubbo:微服务通信的高效解决方案
【10月更文挑战第15天】随着信息技术的发展,微服务架构成为企业应用开发的主流。Spring Cloud Dubbo结合了Dubbo的高性能RPC和Spring Cloud的生态系统,提供高效、稳定的微服务通信解决方案。它支持多种通信协议,具备服务注册与发现、负载均衡及容错机制,简化了服务调用的复杂性,使开发者能更专注于业务逻辑的实现。
51 2
|
3月前
|
Dubbo Java 应用服务中间件
💥Spring Cloud Dubbo火爆来袭!微服务通信的终极利器,你知道它有多强大吗?🔥
【8月更文挑战第29天】随着信息技术的发展,微服务架构成为企业应用开发的主流模式,而高效的微服务通信至关重要。Spring Cloud Dubbo通过整合Dubbo与Spring Cloud的优势,提供高性能RPC通信及丰富的生态支持,包括服务注册与发现、负载均衡和容错机制等,简化了服务调用管理并支持多种通信协议,提升了系统的可伸缩性和稳定性,成为微服务通信领域的优选方案。开发者仅需关注业务逻辑,而无需过多关心底层通信细节,使得Spring Cloud Dubbo在未来微服务开发中将更加受到青睐。
84 0
|
30天前
|
Dubbo Java 应用服务中间件
Dubbo学习圣经:从入门到精通 Dubbo3.0 + SpringCloud Alibaba 微服务基础框架
尼恩团队的15大技术圣经,旨在帮助开发者系统化、体系化地掌握核心技术,提升技术实力,从而在面试和工作中脱颖而出。本文介绍了如何使用Dubbo3.0与Spring Cloud Gateway进行整合,解决传统Dubbo架构缺乏HTTP入口的问题,实现高性能的微服务网关。
|
2月前
|
Dubbo 应用服务中间件 Apache
Star 4w+,Apache Dubbo 3.3 全新发布,Triple X 领衔,开启微服务通信新时代
在 Apache Dubbo 突破 4w Star 之际,Apache Dubbo 团队正式宣布,Dubbo 3.3 正式发布!作为全球领先的开源微服务框架,Dubbo 一直致力于为开发者提供高性能、可扩展且灵活的分布式服务解决方案。此次发布的 Dubbo 3.3,通过 Triple X 的全新升级,突破了以往局限,实现了对南北向与东西向流量的全面支持,并提升了对云原生架构的友好性。
139 8
|
6月前
|
Dubbo Java 应用服务中间件
阿里巴巴资深架构师深度解析微服务架构设计之SpringCloud+Dubbo
软件架构是一个包含各种组织的系统组织,这些组件包括Web服务器,应用服务器,数据库,存储,通讯层),它们彼此或和环境存在关系。系统架构的目标是解决利益相关者的关注点。