
Sentinel
阿里巴巴服务熔断限流组件Sentinel 源码分析
普通网友
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Alibaba Sentinel 源码分析(8) AuthoritySlot 鉴权分析
1.检查白名单 2.根据资源的name获取白名单规则 3.然后根据规则检查app应用能否passCheck,通过检查;细节如下图原创 2020-05-03 23:16:15 · 200 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(7) StatisticSlot 实时数据采集分析
1.做一些检查,fireEntry,先执行其他的处理器逻辑,执行完成后收集统计信息 2.node累加线程数threadNum;累加通过的request数量 3. 全局统计累加,更新入站全局流量 4.处理通过的event,使用注册的entry回调处理handler 5.如果处理异常,则增加异常的数量统计 对于exit方法 1.计算响应时间,记录响应时间和成功的次数count...原创 2020-05-03 23:09:17 · 482 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(6) NodeSelectorSlot 分析
NodeSelectorSlot 是第一进入的插槽slot 插槽NodeSelector的作用,尝试构造调用链;作用是创造一个节点nodeA 创造出一个集群节点ClusterNode 两个上下文同时创建出nodeA,但是只会创建出一个nodeA结点 1.从缓存map中获取node,如果node为null 2.就使用synchronized同步,再次获取,还为空;就创建默...原创 2020-05-03 22:49:29 · 569 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(5) 原理分析, dashboard规则配置
pull 模式 规则持久化原理 那我们有什么办法能解决这个问题呢,其实很简单,那就是把原本保存在 RuleManager 内存中的规则,持久化一份副本出去。这样下次客户端重启后,可以从持久化的副本中把数据 load 进内存中,这样就不会丢失规则了,如下图所示: 目前 Sentinel 中默认实现了5种规则持久化的方式,分别是:file、redis、nacos、zk和a...原创 2020-01-27 18:16:35 · 366 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(4) core 核心功能 降级
还是先来看ExceptionRatioDegradeDemo 1.启动tick 启动线程timer进行计时 2.初始化规则rule,设置异常比例0.1 3.调用SphU.entry 4.还是获取slot的chain 5.checkDegrade,判断该请求是否需要降级 6.先获取降级的规则degradeRule,如果获取为null,直接return返回;循环每个降级的r...原创 2020-01-27 17:44:50 · 230 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(3) core 核心功能 限流(二)
限流策略分析 基于调用关系的流量控制,也有三种情况可以选择: STRATEGY_DIRECT 根据调用方进行限流。ContextUtil.enter(resourceName, origin) 方法中的 origin 参数标明了调用方的身份。 如果 strategy 选择了DIRECT ,则还需要根据限流规则中的 limitApp 字段根据调用方在不同的场景中进行流量控制,包括有:”所有调用...原创 2020-01-27 16:23:35 · 348 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(2) core 核心功能 限流(一)
先来看下和Hystrix的对比 从一个基本的demo 看起FlowQpsDemo, 直接看程序入口main 1.初始化流量统计的规则 rule 2.计时 tick() 方法 3.模拟流量,调用simulateTraffic 可以看到,Sentinel 核心功能,都是依赖于降级,限流的各种规则。都定义在slots目录下,分为鉴权authority,降级degrade和...原创 2020-01-26 21:58:29 · 857 阅读 · 0 评论 -
Alibaba Sentinel 源码分析(1) 代码结构概述 && 基本工作流程
总共代码872个java文件,代码总行数83596 下面看一下各个子工程的功能 1.sentinel-adapter : 对各种框架,中间件的支持。包括dubbo,网关gateway,grpc,reactor,spring-cloud-gateway webflux,webmvc,servlet和zuul 2.senti...原创 2020-01-26 18:50:15 · 472 阅读 · 0 评论