
sentinel
文章平均质量分 89
上班水博客
这个作者很懒,什么都没留下…
展开
-
Sentinel源码分析(五) - 熔断降级
@Author:zxw@Email:502513206@qq.com目录Sentinel源码分析(一) - 初识SentinelSentinel源码分析(二) - Entry构建Sentinel源码分析(三) - 调用链路Sentinel源码分析(四) - 限流规则1.前言在通过了流控插槽后,接下来则是断路器的插槽了。同样的,通过Sentinel的控制台看下断路器的配置有哪些Sentinel 提供以下几种熔断策略:慢调用比例 (SLOW_REQUEST_RATIO):选择以慢原创 2022-02-07 11:38:56 · 1579 阅读 · 4 评论 -
Sentinel源码分析(四) - 限流规则
@Author:zxw@Email:502513206@qq.com目录Sentinel源码分析(一) - 初识SentinelSentinel源码分析(二) - Entry构建Sentinel源码分析(三) - 调用链路1.前言通过上篇文章已经知道FlowSlot节点是用来处理我们流控的实现,以下为添加规则的示例代码private static void initFlowRules() { List<FlowRule> rules = new Array原创 2022-02-07 11:35:17 · 1395 阅读 · 0 评论 -
Sentinel源码分析(三) - 调用链路
@Author:zxw@Email:502513206@qq.com目录Sentinel源码分析(一) - 初识SentinelSentinel源码分析(二) - Entry构建1.前言之前已经分析过Entry的构造流程,我们知道Sentinel关于规则和流控的所有逻辑都在其内部的ProcessorSlotChain调用链路上,首先看看接口提供的方法有哪些。对于链表结构我们清楚,就是不断获取下一个节点,然后进行方法调用。这里该接口提供了两个方法分别为入口entry和出口exit。对于出口原创 2022-02-07 11:33:11 · 1526 阅读 · 0 评论 -
Sentinel源码分析(二) - Entry构建
@Author:zxw@Email:502513206@qq.com目录Sentinel源码分析(一) -初识Sentinel1.前言上篇文章已经讲了资源类CtEntry中的具体属性,那接下来通过一段代码看下Sentinel在初始化Entry的过程中做了哪些操作。public static void main(String[] args) { initFlowRules(); while (true) { Entry entry =原创 2022-02-07 11:31:12 · 583 阅读 · 0 评论 -
Sentinel源码分析(一) - 初识Sentinel
@Author:zxw@Email:502513206@qq.com1.前言再研究Sentinel源码之前,先对Sentinel的理念进行了解。对于网络请求调用可以想象以下两个问题当服务A请求服务B时,服务B响应不及时,导致服务A的线程全部hang死在请求服务B?当服务收到大量网络请求,应用无法支撑时如何解决?以上会导致服务的稳定性降低从而引发系统的崩溃,这对于线上业务来说是不可接受,那么一般的解决方案如下:请求超时:设置请求超时时间请求资源隔离:通过线程池和信号量断路器:当请求异原创 2022-02-07 11:29:34 · 1378 阅读 · 0 评论 -
Sentinel源码解析 - 限流算法种类简介
@author:zxw@email:502513206@qq.com@ Jishou University1.前言限流可以说是高并发中比较重要的一个问题了,面试的时候也经常有关此类的问题,刚好最近在学习限流算法时,苦于找不到好的实现,想起以前用过的sentinel框架里面就有限流的功能,所以顺道来学习下sentinel中限流的实现。2.源码解析我们先来看看Sentinel怎么配置限流策略,在FlowRule对象中,通过配置controlBehavior属性就可以指定限流策略了,默认使用默认的限原创 2021-01-16 10:21:38 · 744 阅读 · 2 评论