27、SpringCloudAlibaba实战:熔断限流:Sentinel热点规则

热点规则

    • 1.添加一个接口
  • 2.添加热点的规则

  • 3.测试效果

  • 热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的数据,并对其访问进行限制

1.添加一个接口

@GetMapping("/buy") 
@SentinelResource("buy") 
public ResponseEntity<String> buy(String prodName,Integer prodCount){
   
      
	return ResponseEntity.ok("买" + prodCount + "份" + prodName ); 
}

2.添加热点的规则

  • 对这个资源添加热点规则:
    *
  • 上面的配置含义是:对 buy 资源添加热点规则,当第 0 个参数的值为华为的时候 QPS 阈值为 3,否则为 1。此外,如果第 0 个参数不传,那么这笔请求不受该热点规则限制

3.测试效果

  • 不是华为:
    *
  • 买 1 次后,里面限流
  • 是华为:同时买 3 次,才限流
    *