
sentinel
中间件兴趣圈
《RocketMQ技术内幕》一书作者、RocketMQ开源社区优秀布道师、CSDN2020博客之星TOP2,主打成体系剖析java中间件,已发布RocketMQ、Kafka、Dubbo、Sentinel、Canal、ElasticJob、ElasticSearch等15个专栏。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
结合 Sentinel 专栏谈谈我的源码阅读技巧
本文行文思路:先抛出源码阅读方法,然后结合Sentinel创作过程谈谈具体是如何运用这些技巧,最后解答几个源码阅读的误区。Sentinel 系列共包含15篇文章,主要以源码分析为手段,图文并茂的方式对 Sentinel 的架构设计理念、核心实现要点进行了一一剖析,并加以实战分析与思考。很多朋友都在询我是如何阅读源码的。对此可归纳为如下几个要点,然后结合 Sentienl 源码分析专栏对各个要点进行拆解,对源码阅读方法进行一次“实战”。阅读官方文档,从全局了解待学习框架能解决什么样的问题,整体架构.原创 2020-06-01 21:43:15 · 1446 阅读 · 1 评论 -
Sentinel 系统自适应限流原理剖析与实战指导
看到标题中的几个关键字系统自适应限流是不是觉得高大上,这个自适应又是如何实现的呢?1、Sentinel 系统自适应概述从官方了解到 Sentienl 系统自适应限流是一个全局的概念,对应用入口流量统一进行统一控制,结合应用的机器负载、CPU 使用率,总体平均响应时间、入口 QPS 和并发线程数等几个维度的监控指标从而决定是否调用进行限流操作。为了有一个直观的感受,我们可以从官方的运维平台看看其系统自适应限流的操作界面:RT、线程数、入口QPS这三个指标是可以通过采集调用信息进行统计计算的,那系统LO原创 2020-05-25 21:26:35 · 2761 阅读 · 0 评论 -
Sentinel Dubbo 适配器看限流与熔断(实战思考篇)
本文是源码分析 Sentinel 系列的第十三篇,已经非常详细的介绍了 Sentinel 的架构体系、滑动窗口、调用链上下文、限流、熔断的实现原理,相信各位读者朋友们对Sentinel有一个较为体系化的认知了,这个时候是该开始如何在生产环境进行运用了。本文将以 Dubbo 服务调用为案例剖析场景,尝试对官方提供的 Dubbo 适配器做一个研究学习并对此做出自己的评价,抛出我的观点,期待与大家共同探讨,交流。一个 Dubbo RPC 的简易调用过程如下图所示:消费者会维护一个服务提供者列表,然后再原创 2020-05-11 21:32:31 · 2232 阅读 · 0 评论 -
源码分析Sentinel专栏
源码分析Sentinel系列是打造的又一重磅专题,详细介绍了限流、熔断的实现原理。1、Alibaba Sentinel 限流与熔断初探(技巧篇)2、源码分析 Sentinel 之 Dubbo 适配原理3、源码分析 Alibaba sentinel 滑动窗口实现原理(文末附原理图)4、寻找一把进入 Alibaba Sentinel 的钥匙(文末附流程图)5、Sentinel 调用上下文环境实现原理6、源码分析 Sentinel 实时数据采集实现原理7、源码分析 RateLimiter Smoot原创 2020-05-08 20:53:13 · 9876 阅读 · 3 评论 -
Sentinel 集群限流设计原理
本节目录1、集群限流使用场景2、集群限流与单机限流的异同思考3、探究集群限流实现原理3.1 ClusterBuilderSlot 详解3.2 集群限流模式实现原理3.2.1 DefaultClusterTokenClient 详解3.2.2 DefaultTokenService 详解4、总结1、集群限流使用场景首先一个服务有三个服务提供者,但这三台集群的硬件配置不一样,如图所示:为了充分...原创 2020-05-04 14:23:23 · 6490 阅读 · 0 评论 -
Sentienl 动态数据源架构设计理念与改造实践
在介绍集群限流之前需要首先掌握动态数据源的配置方式,本文将根据 Sentinel 官方提供的代码提出整体架构思路,并最终给出实践指导。温馨提示:本文主要分为动态数据源架构设计理念、从官方示例寻找改造思路、基于SpringBoot改造方案三个部分来详细剖析 Sentienl 动态数据源的改造方案,循序渐进,不仅解决问题本身,更是反映了作者研究一个问题的思路与方法。1、架构设计理念在 Sen...原创 2020-04-26 09:05:23 · 1459 阅读 · 0 评论 -
源码分析 Sentinel DegradeSlot 熔断实现原理
详细剖析了Sentinel DegradeSlot 熔断的实现原理,提供了三中熔断策略:DEGRADE_GRADE_RT(基于响应时间)、DEGRADE_GRADE_EXCEPTION_RATIO(异常数比例)、DEGRADE_GRADE_EXCEPTION_COUNT(异常数量)。原创 2020-04-12 16:11:41 · 2843 阅读 · 0 评论 -
Sentienl 流控效果之匀速排队与预热实现原理与实战建议
本文详细介绍了匀速排队 RateLimiterController 与 预热 WarmUpController 实现原理,并且在文章末尾对 WarmUpController 的实战使用提出了建议。原创 2020-04-06 23:07:18 · 2666 阅读 · 3 评论 -
源码分析RateLimiter SmoothWarmingUp 实现原理(文末附流程图)
本文详细了介绍了RateLimiter SmoothWarmingUp预热机制的实现原理,对其算法图进行详细的阐述,绝非是对注释进行的英文翻译,特别是解释了预热算法中coldFactor的含义。原创 2020-03-29 16:06:32 · 3598 阅读 · 0 评论 -
源码分析 RateLimiter SmoothBursty 实现原理(文末附流程图)
本文以源码手段详细介绍了guava框架RateLimiter SmoothBursty 的实现原理,文末详给出其流程图与实现思路。原创 2020-03-22 14:53:35 · 2748 阅读 · 1 评论 -
Sentinel FlowSlot 限流实现原理(文末附流程图与总结)
Sentinel 触发限流的实现类为 FlowSlot。我们再来简单思考一下,要实现触发限流,至少需要完成如下几件事情:收集实时调用信息。设置触发限流规则根据限流规则与调用信息来决定是否对请求进行限流等。如何收集实时调用信息在前面的文章中已详细介绍,请带着上述问题开始本节的探讨。本节目录1、初始 FlowSlot2、FlowSlot 详解2.1 FlowSlot 类图2.2 Flow...原创 2020-03-15 19:43:59 · 3679 阅读 · 2 评论 -
源码分析 Sentinel 实时数据采集实现原理
本篇将重点关注 Sentienl 实时数据收集,即 Sentienl 具体是如何收集调用信息,以此来判断是否需要触发限流或熔断。本节目录1、源码分析 StatisticSlot1.1 StatisticSlot entry 详解1.2 StatisticSlot exit 详解2、Sentienl Node 体系2、StatisticNode 详解2.1 核心类图2.2 addPassReque...原创 2020-01-19 21:41:58 · 5366 阅读 · 1 评论 -
Sentinel 调用上下文环境实现原理
用源码与图解的方式详细探究 Sentinel 调用上下文环境是如何管理的。本节将详细介绍 Sentienl 的上下文环境管理机制。1、Sentinel Context 调用上下文环境管理我们从 sentinel-apache-dubbo-adapter 模块的 SentinelDubboProviderFilter 的实现中不难看出,在其入口处会首先调用 ContextUtil.enter...原创 2020-01-12 13:32:55 · 4784 阅读 · 4 评论 -
寻找一把进入 Alibaba Sentinel 的钥匙(文末附流程图)
经过前面几篇文章的铺垫,我们正式来探讨 Sentinel 的 entry 方法的实现流程。即探究进入 Alibaba Sentinel 核心的一把钥匙。本节目录1、SphU.entry 流程分析2、Sentienl ProcessorSlot 处理链2.1 SlotChainBuilder 类体系2.2 DefaultSlotChainBuilder build 方法3、Sentinel Sp...原创 2020-01-05 17:19:00 · 2621 阅读 · 2 评论 -
源码分析 Alibaba sentinel 滑动窗口实现原理(文末附原理图)
以源码为手段一步一步探究 Alibaba Sentienl 滑动窗口的实现原理,同时也是监控指标采集常用设计方法,如果对源码不感兴趣,可以直接跳文末,用一张图揭示了滑动窗口的工作原理。源码分析sentienl 专栏第三篇。原创 2019-12-29 15:30:55 · 6165 阅读 · 2 评论 -
源码分析 Sentinel 之 Dubbo 适配原理
Alibaba Sentienl Dubbo 适配原理分析,重点复习了 Dubbo 的扩展机制 Filter。原创 2019-12-22 17:07:29 · 3235 阅读 · 1 评论 -
Alibaba Sentinel 限流与熔断初探(技巧篇)
温馨提示:源码分析 Alibaba Sentinel 专栏开始连载,本文展示如何学习一个全新的技术的方法。该专栏基于 1.7.0 版本。在学习一个新技术或新框架时,建议先查看其官方文档, Sentinel 官方文档链接如下:官方文档,以获得对其形成一个整体的认识。本节目录1、Sentinel 是什么 ?主要能解决什么问题?2、限流与熔断的使用场景3、Sentinel 源码结构4、在 Int...原创 2019-12-15 15:56:35 · 15707 阅读 · 2 评论