快速理解Dubbo的基本概念

时间:2019-01-10
本文章向大家介绍快速理解Dubbo的基本概念,主要包括快速理解Dubbo的基本概念使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

快速理解Dubbo的基本概念

作为一种分布式服务框架,Dubbo不仅可以提供服务,也可以实现软负载均衡;那么在讲解基本概念概念之前,我们先通过一个小故事来代入一下场景:

六月份的天很热,Roy同学独自坐在长椅上,看着来来往往的女同学白花花的……心神荡漾,突然兜里的手机响了,四周的目光投来,Roy同学惊慌之余拿起来一看,是单纯可爱的车厘子老师打过来的,于是赶紧接通,一阵唏嘘之后,得知车厘子老师碰到了麻烦。
原来,车厘子老师要统计女寝入住女生基本信息,但是女寝人太多,独立统计人手不够,要请Roy同学早一些人帮忙一起统计。
现在Roy同学陷入了艰难的抉择,这样艰巨的任务,他要找谁来帮忙一起去帮忙统计呢?他拿来了女寝登记手册,里面详细记录了每层楼每个寝室的女同学联系方式,于是他找到了老姜,老姜点名说他要统计4楼,因为他的女神住在那一层,找到了孝子,孝子说他想多撩撩,多统计几层楼,而找到了老叶,老叶却说需要知道凤姐住在哪一层,他要统计凤姐住的那一层……

下面讲解基本概念,首先需要上一张严肃点的图:

我们解释一下图中相关的概念:
provider cluster:生产者集群,这里是服务的提供端,当provider通过读取配置文件,解析任务,完成启动,然后将自己的服务装载入Container,装载完成后便是完成了初始化,就可以去regidtry处登记自己的服务;
register:一个第三方注册中心,这个第三方我们可以把它想象成zookeeper,关于zookeeper我们知道,它的应用场景主要是:

. 主从协调(选举MASTER);
. 服务器节点动态上下线;
. 统一配置管理;
. 分布式共享锁;
. 统一名称服务;

这里的register就是实现服务注册与服务发现,每当有 新的服务注册后,它会将这些服务notify(通知)给consumer(消费者)。
consumer cluster:消费者集群,消费者想要消费一些服务,它会去register(注册中心)订阅自己需要的服务,如果注册中心正好有,那便拿到服务,如果没有,它(消费者)便会一直尝试去订阅;
monitor:监控中心,可以用来显示注册的情况,包括相关接口的调用明细等等,另外monitor挂掉了是不影响集群的正常运行的。