Sentinel-Api(二)

2021-01-28 06:15

阅读:703

标签:image   异常   required   source   ESS   argument   utils   com   finally   

sentinel-api 与 sentinel-dashboard设置限流
1.sentinel-api: 定义资源,出现异常后累加异常次数
2.sentinel-dashboard: 对上面定义的资源进行限流操作

1.sentinel-api

// 控制器方法
public String test(@RequestParam(required = false) String a){
        // 定义sentinel资源名
        String resourceName="test-service";
        // 模拟设置【来源-微服务】
        ContextUtil.enter(resourceName,"member-center");

        Entry entry=null;
        try {
            entry= SphU.entry(resourceName);
            if (StringUtils.isBlank(a)){
                throw new IllegalArgumentException("参数 a 不能为空");
            }
        } catch (BlockException e) {
            e.printStackTrace();
            return "限流,降级了";
        } catch (IllegalArgumentException e){
            // 增加 IllegalArgumentException 错误次数
            Tracer.trace(e);
            return e.getMessage();
        }finally {
            // 释放资源
            if (entry!=null){
                entry.exit();
            }
            ContextUtil.exit();
        }
        return "success";
    }

sentinel dashboard操作:

  • 浏览器访问一次对应api
  • 在 sentinel dashboard 设置对应资源的限制
    技术图片

Sentinel-Api(二)

标签:image   异常   required   source   ESS   argument   utils   com   finally   

原文地址:https://blog.51cto.com/3168834/2451941


评论


亲,登录后才可以留言!