专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 java dubbo框架视频教程

java dubbo框架视频教程

更新时间:2020-03-25 15:35:16 来源:动力节点 浏览1663次


  工作原理


java dubbo框架视频教程


  简单的说,Dubbo是基于Java的RPC框架。Dubbo工作分为4个角色,分别是服务提供者、服务消费者、注册中心、和监控中心。


  按照工作阶段又分为部署阶段和运行阶段。


  其中部署阶段在图中以蓝色的线来表示,代表服务注册、服务订阅的过程,而运行阶段在图中以红色的线来表示,代表一次RPC的完整调用。


  部署阶段中服务提供方在启动时在指定的端口上暴露服务,并向注册中心汇报自己的地址。


  服务调用方启动时向注册中心订阅自己感兴趣的服务。


  运行阶段注册中心先将地址列表推送给服务消费者,服务消费者选取一个地址向对端发起调用。


  在这个过程中,服务消费者和服务提供者的运行状态会上报给监控中心。


  整体架构


java dubbo框架视频教程


  这里是Dubbo的整体架构图。首先这张图看起来很复杂、信息量很大。不要被吓到。一点点的来看。


  我先介绍一下这张图的解读方式。这张图从左往右看,分为两部分,左半边蓝色背景的部分代表服务消费者,右半边绿色背景的部分代表服务提供者。


  从上往下看又分为九层。


  左边九层按功能来划分又被分为了三大类,分别是面向用户的Biz层、框架核心RPC以及负责远程传输的Remoting,右边按面向人群又划分为了两类,上面两层是面向用户的API,而下面七层是面向扩展提供者的SPI。


  图中的线代表对象与对象之间不同的关系,紫色代表继承;黑色代表依赖;蓝色虚线代表服务注册、服务订阅的过程,也就是上面讲的部署阶段;红色代表一次完整的RPC调用,也就是运行阶段。


  我们顺着红色的线,来看下一次完整的RPC调用是如何进行的。


  首先从图的左边开始,服务消费者从Proxy层发起一次RPC调用,Dubbo从Registry层拿到服务的地址列表,再通过Cluster层选择其中的一个作为目标地址,再流经Protocol决定的执行链,最后将服务信息,包括要调用的服务名、方法名、参数等序列化,再经过应用协议编码,通过Transport层发送到网络上。


  右边的服务提供者从网络上收到数据以后,从下往上,依次通过应用协议解码、反序列化得到要调用的服务信息,再经由执行链,最终通过Invoker找到目标服务的目标方法,执行并返回结果。


  解读完Dubbo的架构图,再来看看架构图中体现的设计原则。


  Dubbo秉承高内聚、低耦合的设计,这一点体现在架构图中九层的清晰划分上,并且也体现在依赖的方向上。黑色的线条的方向永远是从上指向下,没有循环依赖和反向依赖的出现。


  Dubbo还有一个很重要的设计哲学就是平等对待第三方的扩展,即Dubbo内建的功能也是通过同样的扩展机制提供出来的,第三方的扩展和内建功能可以相互取代。正是由于Dubbo将第三方扩展当成框架的一等公民,为未来基于这个机制建立生态带来了可能性。


  以上就是动力节点java培训机构的小编针对“java dubbo框架视频教程”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>