
WeakHashMap与HashMap有些类似,但也有很多地方不同。它们设置了相同的负载因子和初始容量,但是前者的数据结构只使用了数组+链表,并...
在该篇文章中我将开始介绍ReentrantReadWriteLock有关源码分析。 我先简单介绍下有关变量的含义,再分析读锁和写锁的获取和释放过...
通常我们利用线程池执行任务时,一般会调用execute()方法来进行任务的提交。 然后如果线程池不是将任务放在工作队列里面,而是要创建核心线程或...
之前的限流功能都是单机版的,只能统计本地的服务调用次数信息,那么如果是在集群状态下,一个服务被放在了多个服务器上,假设一个集群有5台机器,每台机...
Sentinel提供了@SentinelResource注解用于定义注解,并提供了AspectJ的扩展用于自定义资源、处理BlockExcept...
在本篇文章中将讲解有关熔断降级的原理。 熔断降级策略是在DegradeSlot中实现的,会调用entry()方法。 下面的逻辑主要是根据当前的资...
在前面一篇文章写了默认的DefaultNode的实现方法,现在讲解剩余的几种方式。 RateLimiterController 匀速排队 重要参...
FlowSlot主要是进行限流工作的。 结合从以前的插槽(NodeSelectorSlot,ClusterNodeBuilderSlot和Sta...
在前面有一篇文章中讲解了有关实时数据统计的文章,在分钟级别时是利用BucketLeapArray来实现的,但是在秒级会有一定的问题。 设想一个场...