dubbo服务调用流程
所属分类 dubbo
浏览量 1091
client ==> server
proxy ProxyFactory jdk javassist
filter local mock cache
invoker cluster failover failsafe failfast failback forking
LoadBlance random roundrobbin leastactive consistenthash
filter context gerneric count limit monitor collect
invoker protocal dubbo rmi hessian http
client Transporter netty mina
codec telnet transport exchange
serialization dubbo hessian java json
threadpool fixed cached
server Transporter netty mina
Exporter protocal dubbo rmi hessian http
filter context token accesslog exception classload echo generic
invoker ProxyFactory jdk javassist
implement java,generic
消费者向注册中心拉取服务提供者的元信息
Proxy 持有一个 Invoker 对象,调用 invoke 之后需要通过 Cluster 先从 Directory 获取所有可调用的远程服务的 Invoker 列表,
如果配置了某些路由规则,比如某个接口只能调用某个节点的那就再过滤一遍 Invoker 列表。
通过 LoadBalance 选取一个,
然后再经过 Filter 做一些统计什么的,
再通过 Client 做数据传输,比如 Netty
Codec 编码
序列化
调用服务提供者
服务提供者接收处理 Codec 反序列化后将请求扔到线程池处理
Exporter Invoker Filter
最终调用实现类 返回结果
流程图
上一篇
下一篇
少儿英语词汇
因配置错误导致kafka无法启动的案例
菜根谭精彩摘录
zookeeper JMX数据解析
dubbo调用失败问题排查
dubbo telnet 命令使用