object SystemLoadAverageMetricsSelector extends CapacityMetricsSelector with Product with Serializable
MetricsSelector that uses the system load average metrics. System load average is OS-specific average load on the CPUs in the system, for the past 1 minute. The system is possibly nearing a bottleneck if the system load average is nearing number of cpus/cores. Low load average capacity => small weight.
- Annotations
- @SerialVersionUID()
- Source
- ClusterMetricsRouting.scala
- Alphabetic
- By Inheritance
- SystemLoadAverageMetricsSelector
- Product
- Equals
- CapacityMetricsSelector
- MetricsSelector
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
def
capacity(nodeMetrics: Set[NodeMetrics]): Map[Address, Double]
Remaining capacity for each node.
Remaining capacity for each node. The value is between 0.0 and 1.0, where 0.0 means no remaining capacity (full utilization) and 1.0 means full remaining capacity (zero utilization).
- Definition Classes
- SystemLoadAverageMetricsSelector → CapacityMetricsSelector
-
def
getInstance: SystemLoadAverageMetricsSelector.type
Java API: get the singleton instance
-
def
weights(nodeMetrics: Set[NodeMetrics]): Map[Address, Int]
The weights per address, based on the capacity produced by the nodeMetrics.
The weights per address, based on the capacity produced by the nodeMetrics.
- Definition Classes
- CapacityMetricsSelector → MetricsSelector
-
def
weights(capacity: Map[Address, Double]): Map[Address, Int]
Converts the capacity values to weights.
Converts the capacity values to weights. The node with lowest capacity gets weight 1 (lowest usable capacity is 1%) and other nodes gets weights proportional to their capacity compared to the node with lowest capacity.
- Definition Classes
- CapacityMetricsSelector