Package io.quarkiverse.bucket4j.runtime
Annotation Type RateLimited
-
@InterceptorBinding @Target({METHOD,TYPE}) @Retention(RUNTIME) public @interface RateLimited
-
-
Field Summary
Fields Modifier and Type Fields Description static StringDEFAULT_BUCKET
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description StringbucketThis is the bucket identity for this method.Class<? extends IdentityResolver>identityResolverIdentity resolver allow to segment the population.
-
-
-
Field Detail
-
DEFAULT_BUCKET
static final String DEFAULT_BUCKET
-
-
Element Detail
-
bucket
String bucket
This is the bucket identity for this method. A configuration key that hold the limits for this bucket must exist If multiple methods share the same bucket, the number of permitted uses is shared among all them- Default:
- "io.quarkiverse.bucket4j.runtime.RateLimited<DEFAULT>"
-
-
-
identityResolver
Class<? extends IdentityResolver> identityResolver
Identity resolver allow to segment the population. Each resolved identity key will have its own quota. There are two provided strategies you can use: ConstantResolver, disable the segmentation completely IpResolver, segment by source Ip address Or you can implement a custom resolver, which must be a valid CDI bean- Default:
- io.quarkiverse.bucket4j.runtime.resolver.ConstantResolver.class
-
-