springcloud流量卫士sentinel 入门(2)流量控制

sentine流量控制
springcloud流量卫士sentinel 入门(2)流量控制_第1张图片
设置阈值即可超过阈值访问会提示
springcloud流量卫士sentinel 入门(2)流量控制_第2张图片
阈值为0为不允许访问

自定义失败后的内容
其一方法
springcloud流量卫士sentinel 入门(2)流量控制_第3张图片

public class DemoUrlBlockHandler implements UrlBlockHandler {
    //自定义超越流量阈值后的内容
    @Override
    public void blocked(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, BlockException e) throws IOException {
        httpServletResponse.getWriter().println("error url");
    }
}
@Configuration
public class SentinelConfig {
    //将自定义的阈值提示加载到应用中
    @PostConstruct
    public void init(){
        WebCallbackManager.setUrlBlockHandler(new DemoUrlBlockHandler());
    }
}

启动项目重新访问 test1()方法

@RestController
public class DemoController {
    @GetMapping("/test")
    public String test(){
        return "test sentinel";
    }
    @GetMapping("/test1")
    public String test1(){
        return "hello sentinel";
    }
}

springcloud流量卫士sentinel 入门(2)流量控制_第4张图片
将阈值调为0
在重新访问test1()方法
springcloud流量卫士sentinel 入门(2)流量控制_第5张图片
其二

@RestController
public class DemoController {
    @GetMapping("/test")
    public String test(){
        return "test sentinel";
    }
    @GetMapping("/test1")
    @SentinelResource(value = "test1",blockHandler = "exHandler")//自定义返回内容
    public String test1(){
        return "hello sentinel";
    }
    public String exHandler(BlockException ex){
        return "exHandler url";
    }
}

你可能感兴趣的:(微服务)