1、@SentinelResource注解介绍

@SentinelResource是Sentinel框架提供的一种注解,可以用来定义资源,并且可以配置控制策略。它可以用来控制访问频率、访问量、熔断、限流等,可以帮助我们对应用的资源进行统一的控制。

2、@SentinelResource注解的使用

@SentinelResource注解可以在方法上使用,也可以在类上使用,使用时需要指定资源名称。

使用在类上:

使用在方法上:

3、@SentinelResource注解的配置控制策略

@SentinelResource注解提供了一些参数,可以用来配置控制策略:

(1)value:资源名称,必填项;

(2)entryType:入口类型,默认为EntryType.OUT,表示出口;

(3)blockHandler:blockHandler类型,用来指定限流之后的处理逻辑;

(4)blockHandlerClass:blockHandler类,用来指定限流之后的处理逻辑;

(5)fallback:fallback类型,用来指定出错之后的处理逻辑;

(6)fallbackClass:fallback类,用来指定出错之后的处理逻辑;

(7)defaultFallback:默认的fallback类型,用来指定出错之后的处理逻辑;

(8)defaultFallbackClass:默认的fallback类,用来指定出错之后的处理逻辑;

(9)rules:可以指定资源的规则,可以是一个数组,可以是一个List;

(10)resourceType:资源类型,默认为RESOURCE_TYPE_COMMON;

(11)grade:限流阈值类型,默认为Grade.QPS;

使用@SentinelResource注解,可以非常灵活的定义控制资源以及配置控制策略。