开发者学堂课程【精通 Spring Cloud Alibaba:Sentinel 控制台动态实现接口限流】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/634/detail/10142
Sentinel 控制台动态实现接口限流
基于我们的控制台创建规则实现限流:
@RequestMapping("/getOrderConsole")
public String getOrderConsole() {
return "getOrderConsole";
}
新增资源名为 getOrderConsole 是错误的,因为没有引入 value = GETORDER_ KEY 注解下,默认资源名称就是接口名称。
注意:
(1)如果没有使用@SentinelResource 注解的情况下,默认的资源名称为接口路径地址。
想用中文显示,可以把注解复制到代码中运行。
(2)Sentinel 限流的规则默认的情况下是没有持久化。如果需要持久化则需采用 zk、nacos、携程阿波罗等。
@SentinelResource(value = "getOrderConsole", blockHandler = " getorderQpsException
@RequestMapping( "/getOrderConsole")
pub1ic String getorderConsole(){
return "getOrderConsole";
}
重新启动,新增限流规则 getOrderConsole
显示该接口已经被限流了。改变每秒 QPS 每秒为10个,点击编辑修改单击阈值,可以限制IP。