加载中
Dubbo的SPI自适应源码分析

之前分析过一篇Dubbo的SPI自适应扩展 。今天我们从源码的层次来分析是如何实现的自适应扩展 先定义一个SPI接口(被@SPI标注): import org.apache.dubbo.common.URL; import org.apache.du...

2021/01/27 13:55
1.7K
在Dubbo拦截器中拿到Invoker的引用对象

本文基于Dubbo 2.7.8。 当我们自定义Dubbo拦截器的时,有时候想要拿到代理对象(这里的代理对象是指Spring容器中的实际对象,可能已经被Cglib或Jdk代理),这里提供一种简单可行的方案。目前...

从源码分析Dubbo与SpringBoot整合之Dubbo启动

前两篇DubboService和DubboReference分析了Dubbo如何将注解类注册到Spring容器中,那么Dubbo是在什么时候开始启动并提供服务的呢? 在分析Reference是提到过Dubbo会自动引配置类,这里需要注...

2020/12/29 11:26
2K
从源码分析Dubbo与SpringBoot整合之@DubboReference处理

上一篇文章中我们分析了Service的处理DubboService,今天继续分析DubboReference。 上次说到通过spring.factories引入自动配置 @EnableDubboConfig //注意这个注解 public class DubboAutoCo...

2020/12/22 11:49
1W
Dubbo的SPI自适应扩展

最近看Dubbo源码的时候,最开始对Dubbo的自适应扩展一直没怎么看明白,参考其他的博客大多也就是把官方的代码解释搬过来,然并卵。 对SPI不明白可以参考官方文档Dubbo SPI。 最后按照自己的理...

2020/12/18 12:14
4K
ReentrantLock中的Condition用法

Condition:条件,这个在ReentrantLock中该怎么使用?如果不了解ReentrantLock的可以先看一下ReentrantLock。总体来说可以类比为synchronized、wait和notify之间的用法。 我们还是举例来说明...

2020/12/18 11:06
699
从源码看AQS

AQS实际上是操作以Node为元素的队列,Node包含了所属线程,先以不公平锁分析:lock时先尝试获取锁,获取失败则进入队列且被阻塞(期间可以被打断)等待,当锁被释放的时候,如果队列不为空,...

2020/12/03 23:26
1.3K
JDK8---UnSafe类实现CAS乐观锁

CAS:CompareAndSwap(比较并交换),简单点说,内存地址V,旧值为A,当要修改为新值B的时候,先判断V当前的值是不是A,如果是,则将V的值修改为B,否则失败。 那么JDK8中是怎么实现的呢?(...

2020/12/03 20:57
269
看一看1.8的HashMap---插入、查找

再看之前,需要先理解位移 先看位移运算,按照我们的日常使用,来一步步分析源代码。 第一步:Hash构造函数 主要两类;第一类,不指定初始化容量 public HashMap() { this.loadFactor = 0.7...

2020/11/22 15:31
92
先看位移运算

初识:<<(左移)、>>(带符号右移)和>>>(无符号右移) (符号: 最高位 0 正数,1负数)。注意当刚好为数据长度的整数倍时,即32、64······,数据保持原来不变;其他情况下移动除以 32 余...

2020/11/20 21:00
44

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部