只要应用的地址变化后,之前的配置就消失了 。不可能每次地址变化后都到控制台去重新配置策略,所以需要选择代码方式制定规则 。
流控规则一般会有如下几个:
- 资源限流规则FlowRule
- 异常熔断降级规则DegradeRule
- 系统过载保护规则SystemRule
- 访问黑白名单规则AuthorityRule

文章插图
代码制定和加载流控规则,如下:
public static void mAIn(String[] args) {// 加载限流规则initSentinelRule();SpringApplication.run(SpringSentinelDemoApplication.class, args);}private static void initSentinelRule() {// 资源限流FlowRule flowRule = new FlowRule("test").setCount(1).setGrade(RuleConstant.FLOW_GRADE_QPS);List<FlowRule> list = new ArrayList<>();/*if (method) {FlowRule flowRule1 = new FlowRule("test:sayHello(java.lang.String)").setCount(5).setGrade(RuleConstant.FLOW_GRADE_QPS);list.add(flowRule1);}*/list.add(flowRule);FlowRuleManager.loadRules(list);// 异常降级/*List<DegradeRule> DegradeRules = new ArrayList<>();DegradeRule degradeRule = new DegradeRule("");degradeRule.setGrade(CircuitBreakerStrategy.ERROR_RATIO.getType());degradeRule.setCount(0.7); // Threshold is 70% error ratiodegradeRule.setMinRequestAmount(100).setStatIntervalMs(30000) // 30s.setTimeWindow(10);DegradeRules.add(degradeRule);DegradeRuleManager.loadRules(DegradeRules);*/// 系统负载保护/*List<SystemRule> systemRules = new ArrayList<>();SystemRule systemRule = new SystemRule();systemRule.setHighestSystemLoad(10);systemRules.add(systemRule);SystemRuleManager.loadRules(systemRules);*/// 黑白名单授权访问/*AuthorityRule rule = new AuthorityRule();rule.setResource("test");rule.setStrategy(RuleConstant.AUTHORITY_WHITE);rule.setLimitApp("appA,appB");AuthorityRuleManager.loadRules(Collections.singletonList(rule));*/}4、启动测试项目启动完毕后,访问链接http://localhost:9091/foo , 就可以在控制台上看到被限流的资源
文章插图
在流控规则这里,可以看到上文中在代码里设置的规则:

文章插图
启动项目后,测试限流效果 , 如下:
- 1秒内多次访问http://localhost:9091/foo,可以看到触发了限流异常:

文章插图
- 输入http://localhost:9091/foo?t=-1会触发异常 。fallback用于配置熔断降级的方法 , 当发生慢调用、异常数、异常比例数时,会调用fallback方法 。

文章插图
- 输入http://localhost:9091/baz/foo、http://localhost:9091/baz/bad,会分别触发异常和默认fallback 。

文章插图
首先启动sentinel-dashboard,然后使用5个简单步骤即可使用sentinel限流 。
在应用server的IP地址频繁变动的场景下,建议使用代码方式限流 。
流控的方式较多 , 你需要根据自身的业务需求做选择,我一般情况下选择单机流控和系统保护 。
【五小步快速集成使用sentinel限流】
推荐阅读
- 冬季涮肉遵守五项纪律
- 郑欣宜失踪5个月后露面!瘦到90斤五官大变样,眼含泪疑未得6000W
- 2024年五一怎么放假 五一怎么放假
- 饱腹又瘦身五款美味吃喝!
- 痛击皱纹 五大药膳DIY
- 都市人必知的餐桌五戒
- 闽南风味美食 煲仔五味薄饼
- 招牌炒五仁
- 郑欣宜失踪5个月后露面!瘦到90斤五官超像爸,眼含泪疑未得6000W
- 5201314什么意思五个坚持 5201314什么意思
