public class CPUCircuitBreaker extends CircuitBreaker
Tracks current CPU usage and triggers if the specified threshold is breached. This circuit breaker gets the average CPU load over the last minute and uses that data to take a decision. We depend on OperatingSystemMXBean which does not allow a configurable interval of collection of data. //TODO: Use Codahale Meter to calculate the value locally.
The configuration to define which mode to use and the trigger threshold are defined in solrconfig.xml
CircuitBreaker.CircuitBreakerConfigconfig, NAME| Constructor and Description |
|---|
CPUCircuitBreaker(CircuitBreaker.CircuitBreakerConfig config) |
| Modifier and Type | Method and Description |
|---|---|
protected double |
calculateLiveCPUUsage() |
double |
getCpuUsageThreshold() |
String |
getDebugInfo()
Get debug useful info.
|
String |
getErrorMessage()
Get error message when the circuit breaker triggers
|
boolean |
isTripped()
Check if circuit breaker is tripped.
|
isEnabledpublic CPUCircuitBreaker(CircuitBreaker.CircuitBreakerConfig config)
public boolean isTripped()
CircuitBreakerisTripped in class CircuitBreakerpublic String getDebugInfo()
CircuitBreakergetDebugInfo in class CircuitBreakerpublic String getErrorMessage()
CircuitBreakergetErrorMessage in class CircuitBreakerpublic double getCpuUsageThreshold()
protected double calculateLiveCPUUsage()
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.