dubbo详解

一、dubbo是什么

dubbo是一个分布式的服务框架,致力于提升性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。web

简言之,dubbo就是一个服务框架,若是没有分布式的需求,其实不须要用的,只有分布式的时候,才须要dubbo这样的分布式框架spring

本质里,dubbo就是个服务调用的东东。。网络

说白了就是个远程服务调用的分布式框架(告别webservice模式中的wsdl,以服务者与消费者的方式在dubbo上注册)多线程

dubbo能够和spring无缝集成架构

二、dubbo能干什么

1)透明化的远程方法调用,就像调用本地方法同样,只需简单配置,没有任何API侵入负载均衡

2)软负载均衡及容错机制,可在内网替代F5等硬件负载均衡器,下降成本,减小单点框架

3)服务自动注册与发现,再也不须要写死服务提供方地址,注册中心基于接口名查询服务提供者的IP地址,而且可以平滑添加或删除服务提供者async

4)dubbo采用全spring配置方式,透明化接入应用,对应用没有任何API侵入,只需spring加载dubbo的配置便可,dubbo基于spring的schema扩展进行加载分布式

三、dubbo怎么用——即dubbo工做原理

dubbo的核心:性能

1)远程通信:提供多种基于长链接的NIO框架封装,包括多线程模型,序列号,以及“请求-响应”模式的信息交换方式

2)集群容错:提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持

3)自动发现:基于注册中心目录服务,使服务消费方可以动态查找服务提供方,使地址透明,使服务提供方能够平滑增长或减小机器

dubbo主要核心部件

Remoting:网络通讯框架,实现了sync-over-async和request-response消息机制。

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

Registry:服务目录框架用于服务的注册和服务事件发布和订阅。

dubbo核心架构图:

相关文章
相关标签/搜索