简介
当前文章 演示几种主动限流的配置和自定义兜底方法的配置 当前环境已经完成了nacos注册中心的整合 sentinel控制台的整合 具体整合配置 可以看我以前的文章
主动限流
sentinel控制台根据资源名限流

@GetMapping("/testE")
@SentinelResource(value = "testE",blockHandler = "dealTestE")
public String testE(String username){
return "E方法的调用";
}
public String dealTestE(String username,BlockException blockException){
return "------------运行兜底方法--------------";
}
sentinel控制台配置根据请求资源路径限流

@GetMapping("/user/login")
@SentinelResource(value = "login")
public String login(String username){
return "url限流测试";
}

自定义兜底方法
配置单个兜底方法【除啦单个兜底方法 还可以配置 兜底放在所在类和共同的兜底方法】
@GetMapping("/user/login")
@SentinelResource(value = "login",fallback = "deal_login")
public String login(String username){
return "url限流测试";
}
public String deal_login (String username){
return "------成功执行url限流";
}
@GetMapping("/testE")
@SentinelResource(value = "testE",blockHandler = "dealTestE")
public String testE(String username){
return "E方法的调用";
}
public String dealTestE(String username,BlockException blockException){
return "------------运行兜底方法--------------";
}
配置兜底方法 所在的类和 兜底方法
@GetMapping("/user/register")
@SentinelResource(value = "register",fallbackClass = FalbakcHandler.class,fallback = "dealRegister",
blockHandlerClass = BlockHandler.class,blockHandler = "dealRegister")
public String dealRegister(){
return "运行成功";
}