Resilience4j · Schema
Resilience4j Bulkhead Configuration
JSON Schema for Resilience4j bulkhead and thread pool bulkhead 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/bulkhead-configuration.json",
"title": "Resilience4j Bulkhead Configuration",
"description": "JSON Schema for Resilience4j bulkhead and thread pool bulkhead configuration properties.",
"type": "object",
"properties": {
"resilience4j": {
"type": "object",
"properties": {
"bulkhead": {
"type": "object",
"properties": {
"configs": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/BulkheadConfig"
}
},
"instances": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/BulkheadInstance"
}
}
}
},
"thread-pool-bulkhead": {
"type": "object",
"properties": {
"configs": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/ThreadPoolBulkheadConfig"
}
},
"instances": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/ThreadPoolBulkheadInstance"
}
}
}
}
}
}
},
"$defs": {
"BulkheadConfig": {
"type": "object",
"properties": {
"maxConcurrentCalls": {
"type": "integer",
"default": 25,
"description": "Maximum number of concurrent calls allowed."
},
"maxWaitDuration": {
"type": "string",
"default": "0ms",
"description": "Maximum wait duration for a call to acquire permission."
},
"writableStackTraceEnabled": {
"type": "boolean",
"default": true,
"description": "Whether BulkheadFullException has a writable stack trace."
}
}
},
"BulkheadInstance": {
"allOf": [
{ "$ref": "#/$defs/BulkheadConfig" },
{
"type": "object",
"properties": {
"baseConfig": {
"type": "string",
"description": "Name of a shared configuration to inherit from."
}
}
}
]
},
"ThreadPoolBulkheadConfig": {
"type": "object",
"properties": {
"maxThreadPoolSize": {
"type": "integer",
"description": "Maximum thread pool size."
},
"coreThreadPoolSize": {
"type": "integer",
"description": "Core thread pool size."
},
"queueCapacity": {
"type": "integer",
"default": 100,
"description": "Capacity of the queue."
},
"keepAliveDuration": {
"type": "string",
"default": "20ms",
"description": "Duration for which excess threads stay alive."
},
"writableStackTraceEnabled": {
"type": "boolean",
"default": true,
"description": "Whether BulkheadFullException has a writable stack trace."
}
}
},
"ThreadPoolBulkheadInstance": {
"allOf": [
{ "$ref": "#/$defs/ThreadPoolBulkheadConfig" },
{
"type": "object",
"properties": {
"baseConfig": {
"type": "string",
"description": "Name of a shared configuration to inherit from."
}
}
}
]
}
}
}