dubbo架构相关知识学习

dubbo架构分为十层:

Service:接口层,提供服务端以及客户端实现,类ServiceBeanReferenceBean    

Config:配置层,ServiceConfigReferenceConfig,从dubbo.xsd中属性依赖如下,我们可以看出service和reference共用abstractInterfaceTypeabstractMethodType配置信息

service->serviceType->abstractServiceType->abstractInterfaceType->abstractMethodType
reference->referenceType->abstractReferenceType->abstractInterfaceType->abstractMethodType

Proxy:服务代理,生成服务的客户端stub和服务器端Skeleton,rmi协议就是使用这种方式调用远程服务

Register:注册中心,负责服务的注册和发现。聚合名称处理,自动识别服务提供者上线,以及数据修改后,及时更新。注册中心支持有zookeeper,redis等,但是zookeeper数据存储在内存中,使用一主多从的架构,主节点负责写入数据,然后在同步到从服务器。适合于读多写少的场景

Cluster:集群层,封装多个实例的路由和负载均衡策略,将多个实例对象封装合成一个服务,传递给客户端

monitor:监控层,上报请求数,响应时间,成功响应数等

protocol:协议层,封装成rpc请求调用,支持协议有dubbo,http,hessian,rest等协议

exchange:对象交换层。同步转异步,大对象的信息交换,详情可参照java exchange栅栏实现。

transport:网络传输层。用户客户端与服务端通信,可采用netty和mina等通信网络库进行通信

serializable:序列化。java,json,xml等序列化方式,网络传输层需要

猜你喜欢

转载自my.oschina.net/u/1017791/blog/2987296
今日推荐