public abstract class HystrixThreadPoolProperties
extends java.lang.Object
HystrixThreadPool
.
Default implementation of methods uses Archaius (https://github.com/Netflix/archaius)
Modifier and Type | Class and Description |
---|---|
static class |
HystrixThreadPoolProperties.Setter
Fluent interface that allows chained setting of properties that can be passed into a
HystrixThreadPool via a HystrixCommand constructor to inject instance specific property
overrides. |
Modifier | Constructor and Description |
---|---|
protected |
HystrixThreadPoolProperties(HystrixThreadPoolKey key) |
protected |
HystrixThreadPoolProperties(HystrixThreadPoolKey key,
HystrixThreadPoolProperties.Setter builder) |
protected |
HystrixThreadPoolProperties(HystrixThreadPoolKey key,
HystrixThreadPoolProperties.Setter builder,
java.lang.String propertyPrefix) |
Modifier and Type | Method and Description |
---|---|
HystrixProperty<java.lang.Integer> |
coreSize()
Core thread-pool size that gets passed to
ThreadPoolExecutor.setCorePoolSize(int) |
static HystrixThreadPoolProperties.Setter |
defaultSetter()
Factory method to retrieve the default Setter.
|
HystrixProperty<java.lang.Integer> |
keepAliveTimeMinutes()
Keep-alive time in minutes that gets passed to
ThreadPoolExecutor.setKeepAliveTime(long, TimeUnit) |
HystrixProperty<java.lang.Integer> |
maxQueueSize()
Max queue size that gets passed to
BlockingQueue in HystrixConcurrencyStrategy.getBlockingQueue(int)
This should only affect the instantiation of a threadpool - it is not eliglible to change a queue size on the fly. |
HystrixProperty<java.lang.Integer> |
metricsRollingStatisticalWindowBuckets()
Number of buckets the rolling statistical window is broken into.
|
HystrixProperty<java.lang.Integer> |
metricsRollingStatisticalWindowInMilliseconds()
Duration of statistical rolling window in milliseconds.
|
HystrixProperty<java.lang.Integer> |
queueSizeRejectionThreshold()
Queue size rejection threshold is an artificial "max" size at which rejections will occur even if
maxQueueSize has not been reached. |
static HystrixThreadPoolProperties.Setter |
Setter()
Factory method to retrieve the default Setter.
|
protected HystrixThreadPoolProperties(HystrixThreadPoolKey key)
protected HystrixThreadPoolProperties(HystrixThreadPoolKey key, HystrixThreadPoolProperties.Setter builder)
protected HystrixThreadPoolProperties(HystrixThreadPoolKey key, HystrixThreadPoolProperties.Setter builder, java.lang.String propertyPrefix)
public HystrixProperty<java.lang.Integer> coreSize()
ThreadPoolExecutor.setCorePoolSize(int)
HystrixProperty<Integer>
public HystrixProperty<java.lang.Integer> keepAliveTimeMinutes()
ThreadPoolExecutor.setKeepAliveTime(long, TimeUnit)
HystrixProperty<Integer>
public HystrixProperty<java.lang.Integer> maxQueueSize()
BlockingQueue
in HystrixConcurrencyStrategy.getBlockingQueue(int)
This should only affect the instantiation of a threadpool - it is not eliglible to change a queue size on the fly.
For that, use queueSizeRejectionThreshold()
.HystrixProperty<Integer>
public HystrixProperty<java.lang.Integer> queueSizeRejectionThreshold()
maxQueueSize
has not been reached. This is done because the maxQueueSize
of a
BlockingQueue
can not be dynamically changed and we want to support dynamically changing the queue size that affects rejections.
This is used by HystrixCommand
when queuing a thread for execution.
HystrixProperty<Integer>
public HystrixProperty<java.lang.Integer> metricsRollingStatisticalWindowInMilliseconds()
HystrixRollingNumber
inside each HystrixThreadPoolMetrics
instance.HystrixProperty<Integer>
public HystrixProperty<java.lang.Integer> metricsRollingStatisticalWindowBuckets()
HystrixRollingNumber
inside each HystrixThreadPoolMetrics
instance.HystrixProperty<Integer>
public static HystrixThreadPoolProperties.Setter Setter()
public static HystrixThreadPoolProperties.Setter defaultSetter()