
Sentinel
服务 流控、限流、熔断、保护组件
诗水人间
要想走的更远,就需要思考更深层次的问题。冷静、智慧、深沉是我所向往的
展开
-
01、服务雪崩、服务熔断、服务降级 -- 基础概念
相关参考文章:https://zhuanlan.zhihu.com/p/59109569服务雪崩(服务像雪崩一样崩塌破坏)服务雪崩的概念简单的理解为,一条服务链A(用户服务)、B(订单服务)、C(支付服务)三个服务,分别是A调用B,B调用C。一般而言任务量最大的是底层服务C。服务C如果挂了(宕机)导致B服务间接也不可用、B服务不可用又间接导致A不可用。这样这条服务链A->B->C也就全部挂了,就像雪崩一样,因为一个服务不可用导致全部服务不可用。因此这种现象就是服务雪崩。服务熔断(断开上原创 2020-10-13 00:00:54 · 63958 阅读 · 0 评论 -
Sentinel下载和使用,java -jar jar包 --server.port=自定义端口
sentinel官网下载sentinel地址:https://github.com/alibaba/Sentinel/releases下载 sentinel-dashboard-1.7.2.jar通过java -jar启动sentinel ,默认sentinel占用的端口是8080 --server.port=8888是将端口设置为8888,如果有改端口需求则更改对应端口即可java -jar .\sentinel-dashboard-1.7.2.jar --server.port=8888原创 2020-06-28 13:24:57 · 134660 阅读 · 0 评论 -
sentinel熔断降级策略----平均响应时间RT
降级策略RT是平均响应时间策略设置RT的响应时间单位毫秒,RT最大值为4900毫秒,需要变更此上限可以通过启动配置项-Dcsp.sentinel.statistic.max.rt=xxx来配置需要使用到jmeter测试工具,jmeter下载页面下载zip包即可解压后修改配置文件bin下的 jmeter.properties搜索language,将en修改为zh_CNlanguage通过文本编辑器搜索下面的,然后修改为UTF-8sampleresult.default.encodin原创 2020-06-30 17:44:27 · 161613 阅读 · 5 评论 -
sentinel流控设置--流控排队等待
排队等待顾名思义,请求过多时,让请求匀速的进入后台进行处理。采用漏斗算法,控制流量设置超时时间,超时的则将请求抛弃,返回错误信息原创 2020-06-29 00:09:55 · 133215 阅读 · 0 评论 -
sentinel流控设置--流控预热
预热顾名思义,意思就是让流量慢慢的涨,不让流量突然的达到阈值这里直接修改之前的规则,选择Warm up使用场景在秒杀场景原创 2020-06-28 23:59:11 · 134757 阅读 · 0 评论 -
sentinel流控设置--关联限流
当A管理的B资源达到阈值,则限流A相当于支付模块达到阈值,则限流订单模块请求链接的示例代码/test002的限流规则/test001的限流规则预期效果由于对/test001的限流控制采用QPS关联,所以直接访问不会被限流,会发现一直刷新/test001不会出现限流,如图但是访问/test002设置来QPS直接的策略进行限流,则频繁访问/test002会出现限流提示如图:为了能够模拟出效果,使用postman模拟使用postman模拟多用户访问/test002然后自己在浏览原创 2020-06-28 23:48:08 · 134030 阅读 · 13 评论 -
sentinel流控设置--线程数直接失败
为了演示效果,修改Controller代码,让线程多等待一会import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class SentinelDemoController { @GetMapping("/test001") public String..原创 2020-06-28 17:03:19 · 155309 阅读 · 6 评论 -
sentinel流控设置--QPS直接失败
sentinel中设置了流控每秒一个请求数,点击过频繁则会直接拒绝,如下gif图原创 2020-06-28 16:18:09 · 138018 阅读 · 0 评论