Dubbo整体调用流程

Posted by kyle on August 16, 2019
消费者

Proxy : 由ProxyFactory用Javassist或JdkDynamiceProxy动态编译
    |
    |
    V
Invoker
    |
    |
    V
Cluster : 集群方式,包含两方面内容:容错方式、调用方式 ----> Directory : 服务目录 ----> Router : 自定义路由
    |
    |
    V
LoadBalance : 负载均衡方式
    |
    |
    V
Filter : 过滤器
    |
    |
    V
Invoker
    |
    |
    V
Client
    |
    |
    V

网络

Codec : 编码、解码
    |
    |
    V
Serialization : 序列化 ----> 序列化写入ObjectOutput对象,反序列化则写入ObjectInput对象
    |
    |
    V

生产者

ThreadPool : Dubbo线程池,也称为业务线程池,Dubbo线程模型的核心
    |
    |
    V
Server
    |
    |
    V
Dispatcher : Handler分发器,用来流式处理请求,Handler最终返回Exporter
    |
    |
    V
Exporter
    |
    |
    V
Filter : 过滤器
    |
    |
    V
Invoker
    |
    |
    V
ProxyImpl : 由ProxyFactory用Javassist或JdkDynamiceProxy动态编译