参数配置说明
参数名称 | 是否必选 | 参数类型 | 取值范围 | 描述 |
|---|---|---|---|---|
bizPool | 否 | ThreadPoolConfig | 参考表2。 | 线程池配置。 |
caches | 否 | Map of CacheConfig | key为userdefine1,userdefine2...... 单个维度请参考表3。 | 多个缓存配置。 |
rules | 否 | Map of ClientProperties | key为userdefine1,userdefine2...... 单个维度请参考表4。 | 多个熔断和重试。 |
参数名称 | 是否必选 | 参数类型 | 默认值 | 取值范围 | 描述 |
|---|---|---|---|---|---|
prioritized | 否 | boolean | false | true/false | 线程池队列是否采用优先队列,当消息有优先级时需要设置:
|
core-pool-size | 否 | Interger | 20 | - | 线程池核心线程数。 |
maximum-pool-size | 否 | Interger | 32 | - | 线程池所能容纳的最大线程数。 |
work-queue-size | 否 | Interger | 60000L | - | 线程池任务队列大小。 |
keep-alive-time-ms | 否 | Long | 5000 | - | 非核心线程闲置时的超时时长。 |
rejected-execution-handler-class-name | 否 | String | 无 | java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy | 线程池的拒绝策略。 |
参数名称 | 是否必选 | 参数类型 | 取值范围 | 默认值 | 描述 |
|---|---|---|---|---|---|
ttl | 否 | Long | - | 21600 | 缓存时长(单位:秒),默认6小时。 |
performance-ttl | 否 | Long | - | 600 | 性能缓存时长(单位:秒),默认10分钟。 |
type | 否 | CacheType | redis/caffeine | nocache | 缓存类型。 |
redis-connection-factory-bean-name | 否 | String | - | clientcontrolDcs | 缓存类型为redis时可通过配置该选项指定。RedisConnectionFactory的bean名称来选择所用数据源,默认使用dcs的默认配置。 |
maximum-size | 否 | Long | - | 60000L | caffeine缓存最大数量,默认60000。 |
cache-consecutive-exception-times | 否 | Integer | - | 3 | 缓存连续异常次数,默认3次。 |
cache-interruption-duration | 否 | Long | - | 60 | 缓存功能关闭时长,单位(秒),默认60。 |
custom-cache-manager-bean-name | 否 | String | - | customCacheManager | 当缓存类型为custom时需要指定该值。 |
参数名称 | 是否必选 | 参数类型 | 取值范围 | 描述 |
|---|---|---|---|---|
match | 否 | String | - | 正则表达式,用于与requestMapping中的url匹配。 |
module | 否 | FallbackOrder | RetryFirst/CircuitBreakerFisrt二选一的枚举类。 | RetryFirst重试次数不计入断路器/CircuitBreakerFisrt重试次数也计入断路器(默认CircuitBreakerFisrt)。 |
time-limit | 否 | TimeLimit | 参考表5。 | 限时配置。 |
retry | 否 | Retry | 参考表6。 | 重试的配置。 |
fallback | 否 | Fallback | 参考表7。 | 断路器配置。 |
参数名称 | 是否必选 | 参数类型 | 取值范围 | 默认值 | 描述 |
|---|---|---|---|---|---|
enable | 否 | boolean | true/false | true | 超时开关。 |
timeout-duration | 否 | Duration | - | 1000 | 限时时长 (单位:毫秒)默认1000ms。 |
cancel-running-future | 否 | boolean | true/false | true | 超时是否结束当前任务,默认true。 |
参数名称 | 是否必选 | 参数类型 | 取值范围 | 默认值 | 描述 |
|---|---|---|---|---|---|
enable | 否 | boolean | true/false | true | 重试开关,默认开启。 |
enable-log | 否 | boolean | true/false | true | 重试日志开关,默认开启。 |
log-correlation-property | 否 | String | - | ClientControl | 可取出header或attributes中相应字段值打印到重试日志中。 |
max-attempts | 否 | Long | - | 3 | 最大重试次数,默认为3次。 |
wait-duration-ms | 否 | Long | - | 500 | 重试间隔,单位(毫秒),默认500(ms)。 |
policy | 否 | String | Exponential/Randomized | Randomized | 重试策略,Exponential指数级/Randomized固定间隔(默认Randomized)。 |
randomized-wait-factor | 否 | double | 0.0-1.0 | 0.5 | 随机策略随机因子,默认0.5。 |
exponential-backoff-multiplier | 否 | double | - | 2 | 指数退避算法的乘数,默认2.0。 |
ignore-exceptions | 否 | Class<? extends Throwable> | - | - | 不触发重试的异常,此项配置在超时启用时失效。 |
retry-exceptions | 否 | Class<? extends Throwable> | - | - | 指定触发重试的异常。 |
参数名称 | 是否必选 | 参数类型 | 取值范围 | 默认值 | 描述 |
|---|---|---|---|---|---|
enable | 否 | boolean | true/false | true | 熔断开关。 |
enable-log | 否 | boolean | true/false | true | 熔断状态切换日志开关。 |
slow-call-duration-threshold | 否 | Long | - | 60(单位 s) | 计入慢调用的时间(单位:秒)。 |
slow-call-rate-threshold | 否 | Long | - | 100 | 慢调用百分比(100为关闭慢调用熔断功能)(慢调用计算窗口和失败的窗口是独立计算的两个窗口)。 |
failure-rate-threshold | 否 | Long | 0-100 | 50 | 滑动窗口内失败百分比,默认50。 |
sliding-window-type | 否 | String | COUNT_BASED/TIME_BASED | TIME_BASED | 滑动窗口类型(COUNT_BASED次数/TIME_BASED时间)。 |
sliding-window-size | 否 | Long | - | 30 | 滑动窗口大小(次/秒)。 |
minimum-number-of-calls | 否 | Long | - | 100 | 滑动窗口内最小请求数(滑动窗口内满足最小请求数才会触发熔断)。 |
wait-duration-in-open-state | 否 | Duration | - | 60000(单位 ms) | 进入半开所需时间(断路器打开以后进入半开状态等待时间)。 |
permitted-number-of-calls-in-half-open-state | 否 | Long | - | 10 | 半开状态允许通过的请求数量(如果失败比例达到设置的百分比,则断路器继续进入打开状态,再次等待进入半开)。 |
ignore-exceptions | 否 | Class<? extends Throwable> | - | - | 不触发熔断的异常,此项配置在超时启用时失效。 |
record-exceptions | 否 | Class<? extends Throwable> | - | - | 指定触发熔断的异常类。 |

