dubbo-原理-框架设计
business也就是service层,是用户编程所涉及的部分。以下的RPC和Remoting都是原理部分。
Config层就是封装配置文件的信息,就是配置文件的内存表示。
Config层下面是Proxy(服务代理层)。它会生成客户端的代理对象,生成服务端的代理对象。代理对象互相调用方法。
Proxy下面是Registry(注册层)。消费者要到注册中心去订阅。服务的发现、服务的注册。
Cluster(路由层),帮我们进行负载均衡。Invoker是调用者,同一个服务有可能在多个机器上,cluster就解决负载均衡的问题。
Monitor(监控层),每一次的调用信息都会被监控层收集。
Protocol(远程调用层),封装整个rpc调用。一次远程调用的3个核心就是:Invoker, Protocol, Exporter.
要远程调用,就要在两台机器间架起通信的管道。Remoting就是解决远程通信的问题。
Exchange(信息交换层),本质就是创建一个客户端,一个服务端,两个架起管道,数据互通。
Transport(传输层),真正传输数据是通过Transporter来封装传输的。Transporter的底层就是Netty框架。
Serialize(序列化层),数据发送前要序列化,数据接收后,反序列化。