SphU是Alibaba Sentinel流控的入口类,用于对资源的访问控制, 简单使用如下

@Test
public void requestTest() {
    // Entry就是一个资源操作对象
    Entry entry = null;
    try {
        //对资源(resource)进行检查,如果流控则抛出BlockedException
        //"resource"一般是请求路径或有SentinelResource注解类定义的访问资源
        entry = SphU.entry("resource");
        //走到这里,表示没有被流控,可以执行相关业务代码
    } catch (BlockException e) {
        // 如果没有通过走到了这里,就表示请求被限流,这里进行降级操作
        e.printStackTrace();
    }finally {
        if(null != entry){
            entry.close();
        }
    }
}

SphU是Sentinel的核心类,通过它来实现流控,后面我们的源码解析也是通过它来展开

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐