一、Dubbo介绍

Dubbo相比传统的分布式架构框架有很大的区别,Dubbo解决的问题不仅仅是分布式服务调用,提供高性能和透明化的rpc调用框架,以及SOA服务治理方案。Dubbo是一款阿里巴巴开源的分布式服务治理框架,每天为2000+服务提供3000000000+访问支持。
1、dubbo服务治理框架
dubbo服务治理框架,治理的不仅仅是简单的SOA架构,而是指的是大规模的服务集群治理。综上,dubbo服务治理主要包括如下几方面的内容:

  1. SOA架构解决架构异构的交互问题
  2. 可以实现不同语言直接功能接口的重用
  3. dubbo是一个分布式RPC远程服务调用框架
  4. 服务注册+服务管理+服务发现+健康管理

2、dubbo支持的协议
(1)Tcp协议
(2)Dubbo协议(默认)
(3)Rmi协议
(4)Webservice协议
(5)Thrift协议
(6)Mmemcached协议
(7)Redis协议
(8)Grpc协议
(9)http2.0协议
其中dubbo协议默认为hessian2序列化,rmi协议默认为java原生序列化,http协议默认为json序列化,webservice协议,默认是soap协议序列化。

二、dubbbo分布式集群架构

dubbo是典型的分布式集群架构,消费者作为客户端调用服务提供者提供的接口,实现服务的远程调用,zookeeper,nacos可作为注册中心,如下图所示:

基于dubbo 分布式架构 dubbo分布式框架_服务提供者

服务提供者向服务注册中心注册服务,消费者从注册中心订阅服务,然后拿到服务的元数据,进行服务远程调用。 dubbo各个组件说明:

(1)服务提供者:服务提供者通过暴露接口的方式向服务消费者提供访问的接口

(2)服务消费者:服务消费者在启动后,就可以向注册中心订阅服务

(3)注册中心:主要是统一管理服务,维护服务的元数据,健康检测服务的状态,向服务消费者提供服务注册信息。

(4)服务监控中心:定时的统计服务的注册和健康信息

(5)服务运行的容器:负责启动加载服务提供者和服务消费者

三、Dubb,HSF,SpringCloud之间的对比

在做技术选型的时候,选择springCloud是比较合理全面的,因为它的整个生态比较完善,组件比较丰富。Dubbo也开始支持rest Api成为微服务有效版图中的一块,dubbbo更强的是可以做企业局域网之间服务调用的通信。淘宝的HSF主要是在阿里内部使用,相反dubbo使用面还是比较丰富。

基于dubbo 分布式架构 dubbo分布式框架_基于dubbo 分布式架构_02