Resilience4j · Schema
Resilience4j Rate Limiter Configuration
JSON Schema for Resilience4j rate limiter configuration properties.
BulkheadCircuit BreakerFault ToleranceJavaMicroservicesRate LimiterResilienceRetrySpring BootFunctional Programming
Properties
| Name | Type | Description |
|---|---|---|
| resilience4j | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/api-evangelist/resilience4j/json-schema/rate-limiter-configuration.json",
"title": "Resilience4j Rate Limiter Configuration",
"description": "JSON Schema for Resilience4j rate limiter configuration properties.",
"type": "object",
"properties": {
"resilience4j": {
"type": "object",
"properties": {
"ratelimiter": {
"type": "object",
"properties": {
"configs": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/RateLimiterConfig"
}
},
"instances": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/RateLimiterInstance"
}
}
}
}
}
}
},
"$defs": {
"RateLimiterConfig": {
"type": "object",
"properties": {
"limitForPeriod": {
"type": "integer",
"default": 50,
"description": "Number of permissions available during one limit refresh period."
},
"limitRefreshPeriod": {
"type": "string",
"default": "500ns",
"description": "Duration of a limit refresh period."
},
"timeoutDuration": {
"type": "string",
"default": "5s",
"description": "Default wait time for permission."
},
"registerHealthIndicator": {
"type": "boolean",
"default": false,
"description": "Whether to register a health indicator."
},
"eventConsumerBufferSize": {
"type": "integer",
"default": 100,
"description": "Size of the event consumer buffer."
},
"writableStackTraceEnabled": {
"type": "boolean",
"default": true,
"description": "Whether RequestNotPermitted has a writable stack trace."
}
}
},
"RateLimiterInstance": {
"allOf": [
{ "$ref": "#/$defs/RateLimiterConfig" },
{
"type": "object",
"properties": {
"baseConfig": {
"type": "string",
"description": "Name of a shared configuration to inherit from."
}
}
}
]
}
}
}