Dubbo服务调用原理

服务调用原理

参考文档
http://dubbo.apache.org/zh-cn/docs/dev/design.html
Dubbo服务调用原理_第1张图片

引用服务

最终,创建一个代理对象

InvokerInvocationHandler
Invoke,是一层一层封装的结果
Dubbo服务调用原理_第2张图片

invoker.invoke

执行
MockClusterInvoker
Dubbo服务调用原理_第3张图片

invoker.invoke

执行
AbstractClusterInvoker
Dubbo服务调用原理_第4张图片

Invoke

执行
Dubbo服务调用原理_第5张图片

doInvoke

执行
FailoverClusterInvoker
Dubbo服务调用原理_第6张图片

doInvoke

执行

Select方法,根据负载均衡策略
选择一个invoker
Dubbo服务调用原理_第7张图片

invoker.invoke

执行
ProtocolFilterWrapper
Dubbo服务调用原理_第8张图片

Invoke

执行
ConsumerContextFilter
Dubbo服务调用原理_第9张图片

invoker.invoke

执行
Filter层层过滤

DubboInvoker
最终,会到DubboInvoker
Dubbo服务调用原理_第10张图片

doInvoke

发送请求,得到请求结果

你可能感兴趣的:(————Dubbo)