(三)dubbo工作原理

 

 

dubbo主要核心部件

 

Remoting:网络通信框架,实现了sync-over-asyncrequest-response消息机制。

RPC:一个远程过程调用的抽象,支持负载均衡、容灾和集群功能。

Registry:服务目录框架用于服务的注册和服务事件发布和订阅。(类似第一篇文章中的点菜宝)

 

 

dubbo架构

 

(三)dubbo工作原理_第1张图片

 

Provider 暴露服务的提供方。

Consumer调用远程服务的服务消费方。

Registry 服务注册中心和发现中心。

Monitor 统计服务和调用次数,调用时间监控中心。dubbo的控制台页面中可以显示)

Container:服务运行的容器。

 

调用关系:

       0、服务器负责启动,加载,运行提供者(例如在tomcat容器中,启动dubbo服务端)。

        1、提供者在启动时,向注册中心注册自己提供的服务。

        2消费者启动时,向注册中心订阅自己所需的服务。

        3、注册中心返回提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。

        4、消费者,从远程接口列表中,调用远程接口,dubbo会基于负载均衡算法,选一台提供者进行调用,如果调用失败则选择另一台。

        5、消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。(可以在dubbo的可视化界面看到)


        综上,这个过程和生活中的很多过程类似,例如第一篇中点菜中顾客和饭店的例子。从中也警戒自己,一定不要把技术和生活分开,一定要把工作和生活分开,今天听罗胖的一句话,说有能力的人是能把一件大的目标,分成小的目标,并不断去实现,同时告诉自己再忙,头脑也要清醒,冷静的把大问题分解为小问题,然后一一解决之。





你可能感兴趣的:(DUBBO)