服务治理框架dubbo中zookeeper的使用

 Zookeeper提供了一套很好的分布式集群管理的机制,就是它这猴子那个几月层次型的目录树的数据结构,并对书中的节点进行有效的管理,从而能够设计出多种多样的分布式的数据管理模型;下面简要介绍下zookeeper在Dubbo中的应用。数据结构

dubbo主要解决了下图中描述的问题,像阿里巴巴这种规模的互联网公司,旗下拥有一系列产品:淘宝、天猫、阿里旅行等。各个系统之间的业务具备必定程度的耦合性,例如支付业务。若是按照传统的网站开发模式,将这些内部系统彻底独立割裂,那么意味着,对于全部相同的业务逻辑,全部的系统都须要实现一遍,若是该公共模块发生变化,那么全部的系统须要从新出包发版本上线,随着公共模块数量的增长,这种耦合性对于后期迭代和运维而言无疑是一种灾难。负载均衡

为了解决上述的问题,阿里巴巴推出了强大的服务治理框架Dubbo,不一样的系统要使用相同的模块,经过dubbo的方式去调用,主要有如下的过程,下面以支付服务为例进行说明:框架

1-将开发好的RPC支付服务注册到Dubbo中;运维

2-内部系统注入Dubbo客户端接口。其实是注入一个动态代理,来调用中间件;分布式

3-内部系统拿到调用中间件获取的服务地址,而后去调用该服务;网站

因此支付服务的调用者(内部系统一、二、3.。。)不须要关注该服务到底部署在那些节点上面,以及这些节点上面的负载均衡状态。这全部的一切都是由Dubbo进行管理,并告知调用者应该去调用哪个节点。设计

二Dubbo之因此能实现这种功能全依赖于ZooKeeper。代理

相关文章
相关标签/搜索