Class CpuMetricsSelector$

java.lang.Object
org.apache.pekko.cluster.metrics.CapacityMetricsSelector
org.apache.pekko.cluster.metrics.CpuMetricsSelector$
All Implemented Interfaces:
Serializable, MetricsSelector, scala.Equals, scala.Product

public class CpuMetricsSelector$ extends CapacityMetricsSelector implements scala.Product, Serializable
MetricsSelector that uses the combined CPU time metrics and stolen CPU time metrics. In modern Linux kernels: CpuCombined + CpuStolen + CpuIdle = 1.0 or 100%. Combined CPU is sum of User + Sys + Nice + Wait times, as percentage. Stolen CPU is the amount of CPU taken away from this virtual machine by the hypervisor, as percentage.

Low CPU capacity => small node weight.

See Also:
  • Field Details

    • MODULE$

      public static final CpuMetricsSelector$ MODULE$
      Static reference to the singleton instance of this Scala object.
  • Constructor Details

    • CpuMetricsSelector$

      public CpuMetricsSelector$()
  • Method Details

    • getInstance

      public CpuMetricsSelector$ getInstance()
      Java API: get the singleton instance
    • factor

      public double factor()
      How much extra weight to give to the stolen time.
    • capacity

      public scala.collection.immutable.Map<Address,Object> capacity(scala.collection.immutable.Set<NodeMetrics> nodeMetrics)
      Description copied from class: CapacityMetricsSelector
      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).
      Specified by:
      capacity in class CapacityMetricsSelector
    • productPrefix

      public String productPrefix()
      Specified by:
      productPrefix in interface scala.Product
    • productArity

      public int productArity()
      Specified by:
      productArity in interface scala.Product
    • productElement

      public Object productElement(int x$1)
      Specified by:
      productElement in interface scala.Product
    • productIterator

      public scala.collection.Iterator<Object> productIterator()
      Specified by:
      productIterator in interface scala.Product
    • canEqual

      public boolean canEqual(Object x$1)
      Specified by:
      canEqual in interface scala.Equals
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object