ContextRefreshEvent是Spring容器加载完发送的一个事件,在工作中有很多实现逻辑使用了该机制。 常见的使用姿势如下: 当调用 bstractApplica...
ContextRefreshEvent是Spring容器加载完发送的一个事件,在工作中有很多实现逻辑使用了该机制。 常见的使用姿势如下: 当调用 bstractApplica...
今年Dubbo发布了全新的3.0版本,开始面向云原生,有很多细节与之前较多使用的2.7.x版本有所不同,本文主要介绍Dubbo3.0下的服务引用流程与之前的不同点,一些相同的...
性能提升是我们追求的一个目标,合理的设计和实现有助于应对较多的复杂场景。有时,可能一个小小的改动点就能带来意想不到的效果。在本文中,将简单的介绍下标签路由的优化点。 标签路由...
路途虽遥远,将来更美好微信公号号:九点半的马拉 在传统模式下,Dubbo消费端需要调用某一远程服务器端的方法时,消费端也需要额外导入服务类接口API,Dubbo也由此实现了面...
Dubbo在服务调用时支持同步调用和异步调用等方式。 在Dubbo2.6版本及之前的版本在实现异步调用时存在一定的缺点,实际上是一种假异步。 下面列举一个异步案例。 当调用服...
是的,判断数据包是否发送完整,防止拆包发生,这里应该加个return,忘记了
轻量级RPC设计与实现第一版什么是RPC RPC (Remote Procedure Call Protocol), 远程过程调用,通俗的解释就是:客户端在不知道调用细节的情况下,调用存在于远程计算机上...
Dubbo通常使用@Reference来引用服务,通过ReferenceAnnotationBeanPostProcessor类,我们可以扫描被@Reference注解标注的...
微信公众号:九点半的马拉路途虽遥远,将来更美好学海无涯,大家一起加油! Dubbo是一款很优秀的RPC框架,目前Github的Star数已经达到34.6k,有效的反映出它的受...
客户端本地数量超过1000后是为了防止出现消费端出现消息堆积,减轻消费端的处理压力,防止宕机
https://github.com/apache/rocketmq/blob/master/docs/cn/features.md
RocketMQ阅读笔记之消息消费的消息拉取消息消费,简而言之就是消费者从消息队列里读取数据。消费者有两种消费方式: Push方式。消息服务器接收到信息后,主动把消息推送给消费者,实时性高。但是这样加大了消息服务器的工...
WeakHashMap与HashMap有些类似,但也有很多地方不同。它们设置了相同的负载因子和初始容量,但是前者的数据结构只使用了数组+链表,并没有用到红黑树, 在这里,与H...
在该篇文章中我将开始介绍ReentrantReadWriteLock有关源码分析。 我先简单介绍下有关变量的含义,再分析读锁和写锁的获取和释放过程。 有关变量 ReadLoc...
通常我们利用线程池执行任务时,一般会调用execute()方法来进行任务的提交。 然后如果线程池不是将任务放在工作队列里面,而是要创建核心线程或者非核心线程时,会进一步调用a...
之前的限流功能都是单机版的,只能统计本地的服务调用次数信息,那么如果是在集群状态下,一个服务被放在了多个服务器上,假设一个集群有5台机器,每台机器单机限流阈值为10qps,理...
Sentinel提供了@SentinelResource注解用于定义注解,并提供了AspectJ的扩展用于自定义资源、处理BlockException等。 注解解释: 当出现...
在本篇文章中将讲解有关熔断降级的原理。 熔断降级策略是在DegradeSlot中实现的,会调用entry()方法。 下面的逻辑主要是根据当前的资源名从在DegradeRule...
在前面一篇文章写了默认的DefaultNode的实现方法,现在讲解剩余的几种方式。 RateLimiterController 匀速排队 重要参数 WarmUpControl...
FlowSlot主要是进行限流工作的。 结合从以前的插槽(NodeSelectorSlot,ClusterNodeBuilderSlot和StatisticSlot)收集的运...