Sentinel
文章平均质量分 54
看着蓝天抽支烟
这个作者很懒,什么都没留下…
展开
-
Sentinel源码分析-ProceesorSlotChain调用链及树状资源节点
ClusterBuilderSlot 则用于存储资源的统计信息以及调用者信息,例如该资源的 RT, QPS, thread count 等等,这些信息将用作为多维度限流,降级的依据;ProcessorSlotChian 实现上述功能的骨架,这个类是基于责任链模式设计,将不同功能(限流,降级,系统保护)封装为一个个的Slot,请求进入后逐个执行。NodeSelectorSlot 负责收集资源的路径,并将这些资源的调用路径,以树状结构存储起来,用于根据调用路径来限流降级;责任链中Solt 也分为两大类。原创 2023-06-14 19:36:13 · 1415 阅读 · 0 评论 -
Sentinel的限流和Gateway的限流差别?
并发的多个请求必须等待,预期的等待时长-最近一次请求的预期等待时间+允许的间隔。比如是1250ms 时来个请求,1250-1000=250, 250后面的第一个时区是500-100。限流算法常见的有三种实现:滑动时间窗口,令牌桶算法,漏桶算法。例如: QPS=5 ,意味这没200ms处理一个队列中的请求,timeout=2000,意味着预期等待超过2000ms的请求会被拒绝并抛出异常。观上图,这种算法使用问题的,在4500-5500ms 这1s内有6个请求通过。漏桶算法是对令牌桶算法的改进。原创 2023-06-14 18:28:58 · 2699 阅读 · 0 评论 -
Sentinel与Hystix的线程隔离有什么差别
Hystix 默认是基于线程池实现线程隔离,每个被隔离的业务都要创建一个独立的线程池,线程过多会带来额外的CPU开销,性能一般,但是隔离性更强。Sentinel 是基于信号量(计算器)实现的线程隔离,不用线程池,性能较好,但是隔离性一般。Sentinel与Hystix的线程隔离有什么差别?原创 2023-06-14 16:36:02 · 1535 阅读 · 0 评论