sentinel
tinysakurac
蹒跚学步的猿
展开
-
sentinel dashboard扩展
前言 在前面的系列博文里我们已经介绍过了sentinel的dashboard的基础用法,使用dashboard可以详细的监控被保护资源的实际访问统计情况,与为不同服务配置的限流规则。sentinel dashboard的功能显然不止于此,官方留了很多功能的入口供使用者自行扩展,本篇博客抛砖引玉。对dashboard流控数据统计持久化与dashboard动态配置限流规则两方面进行扩展。其它功能入口都...原创 2019-11-11 20:00:35 · 1103 阅读 · 0 评论 -
sentinel集成网关流控
简介 使用网关代理服务请求是微服务架构下常见的做法,相比于对被网关代理的各个服务做限流服务,在网关进行统一的限流操作似乎是更好的做法,sentinel对java应用常用的两款网关框架spring-cloud-gateway和zuul1都做了适配。本文将以zuul为例,说明zuul网关接入senrtinel流控能力的步骤并对源码做简单解读 网关限流模块分析 sentinel中对应网关限流规则的实体...原创 2019-11-06 19:43:42 · 4433 阅读 · 0 评论 -
sentinel context组件源码分析
前言 Context组件在sentinel中扮演的是一种什么样的角色呢?借用原作者的注释: This class holds metadata of current invocation 其实就是保存一次资源访问链路元数据的类,链路的各个节点都能通过获取链路绑定的context来获取一些信息进行相应的处理。很多涉及链路的框架都会有类似设计,例如netty的ChannelHandlerConte...原创 2019-10-29 16:34:48 · 907 阅读 · 0 评论 -
sentinel限流相关指标统计源码分析
前言 Sentinel 可以通过并发线程数模式的流量控制来提供信号量隔离的功能。并且结合基于响应时间的熔断降级模式,可以在不稳定资源的平均响应时间比较高的时候自动降级,防止过多的慢调用占满并发数,影响整个系统。 sentinel的限流是基于信号量机制的,因此必定在底层维护了一套限流相关指标的信号量,下面从源码的角度分析一个请求进入被sentinel保护的资源,sentinel是如何记录信号量,...原创 2019-10-29 13:13:38 · 1922 阅读 · 0 评论 -
sentinel整合dubbo实现统一降级
统一降级策略 在我们之前的博客里介绍了dubbo如何整合sentinel进行限流。既然用到了限流,那么每次让被限流的服务都抛一个异常让调用端自己处理显然不是优雅的解决方案,在者一些带有业务含义的降级策略只有在服务提供方才能完成,这时候我们就需要引入sentinel的降级能力。sentinel官方文档推荐的做法是使用注解。这种方法比较灵活但缺点是降级的代码比较分散,代码量也比较多,这时候我们需要一种...原创 2019-10-24 14:36:12 · 4000 阅读 · 5 评论 -
sentinel整合dubbo加入热点参数流控能力
热点参数维度流控 何为热点?热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如: 商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制 用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制 热点参数限流会统计传入参数中的热点参数,并根据配置的限流阈值与模式,对包含热点参数的资源调用进行限流。热点参数限流可以...原创 2019-10-21 20:58:22 · 736 阅读 · 0 评论 -
阿里sentinel流控框架初探
netflix的hystrix作为业界使用最广泛的流控框架,sentinel的开发团队自然少不了对其的学习与改进,这里有一篇开发团队写的两者的对比,总结起来就是sentinel的实现更加轻量,进行流控的维度也更多样。 使用sentinel的另一个理由就是其与国内广泛使用的各大微服务框架都做了集成,接入sentinel更加方便。这里是sentinel集成的其它框架的接入文档。 下面我们以国内使用最为...原创 2019-10-12 17:40:10 · 1511 阅读 · 0 评论