首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Dubbo
订阅
wen酱110586
更多收藏集
微信扫码分享
微信
新浪微博
QQ
223篇文章 · 0订阅
Dubbo进阶(十四):Router的实现
Router是一种约定的规则,路由规则决定了服务消费者的调用目标,即规定了服务消费者可调用哪些服务提供者。比如服务A配置了调用的服务的IP是192.168.1.1,那么路由会过滤到除192.168.1.1之外的所有的服务,只会返回192.168.1.1。 通常服务目录在刷新 I…
Dubbo进阶(十三):Directory的实现
本文我们主要分析Directory。 从这个UML图上可以看到,依然使用了模板模式。AbstractDirectory是一个抽象类,封装了通用逻辑,最重要的有list方法,用于返回所有可用的list,它会调用doList方法,doList是一个抽象方法,在不同的子类会有不同的实…
Dubbo进阶(十二):负载均衡
本文主要讲解负载均衡的相关知识。 Dubbo中实现了五种负载均衡的算法,先看一下UML图。 接下来我们可以通过下面这个表格大概了解一下每种负载均衡的特点。 然后再看一下org.apache.dubbo.rpc.cluster.loadbalance.AbstractLoadBa…
Dubbo进阶(十一):容错机制
本文主要讲解Cluster。 在集群调用失败时,Dubbo提供了多种容错方案,默认值为failover重试。Dubbo中现在有Failover、Failfast、Failsafe、Failback、Forking、Broadcast等容错机制,每个容错机制的特性如下表。 通过上…
Dubbo进阶(十):心跳机制
Dubbo客户端和Dubbo服务端之间存在心跳,目的是维持provider和consumer之间的长链接。由Dubbo客户端主动发起,可参见Dubbo源码 HeartbeatTimerTask和ReconnectTimerTask。 谈到RPC肯定绕不开TCP通信,而主流的RP…
Dubbo进阶(九):服务消费原理
直连服务进行消费。 服务消费端启动时,将自身的信息注册到注册中心的目录,同时还订阅服务提供方的目录,当服务提供方的 URL 发生更改时,实时获取新的数据。 上图中可以看到,服务消费的流程与服务暴露的流程有点类似逆向的。从整体来看,Dubbo做服务消费也分为两大部分,第一步通过持…
Dubbo进阶(八):服务暴露原理
配置文件优先级次最低,比如dubbo.properties文件指定dubbo.protocol.port=20880。一般推荐使用dubbo.properties作为默认值,只有XML没有配置的时候,dubbo.properties才会生效。 我们会通过XML或注解的方式来指定…
Dubbo进阶(七):Dubbo扩展点加载机制(下)
在上一篇文章Dubbo进阶(六):Dubbo扩展点加载机制(中)中介绍了扩展点机制的一些注解,这篇文章主要通过源码来学习一下ExtensionLoader的原理。ExtensionLoader是整个扩展机制的主要逻辑,在这个类里实现了配置的加载、扩展类缓存、自适应对象生成等所有…
Dubbo进阶(六):Dubbo扩展点加载机制(中)
在上一篇文章Dubbo进阶(五):Dubbo扩展点加载机制(上)中对比介绍了Java SPI和Dubbo SPI,这边文章主要讲解一下Dubbo SPI机制的一些注解。 这个注解标识的接口,是一个扩展点接口。此注解标记的接口,就表示是一个可扩展的接口。 这个注解有两种用法:可以…
Dubbo进阶(五):Dubbo扩展点加载机制(上)
Dubbo的扩展点加载机制类似于Java的SPI加载机制,但是Java的SPI加载机制在查找具体某个实现的时候,只能通过遍历进行查找并会实例化所有实现类,因此对于实际不需要加载的扩展实现也会实例化,造成一定的内存浪费。Dubbo SPI加载机制可通过扩展点名称进行查找,避免实例…