Class TimeAverageMessageData

java.lang.Object
org.apache.pulsar.policies.data.loadbalancer.TimeAverageMessageData

public class TimeAverageMessageData extends Object
Data class comprising the average message data over a fixed period of time.
  • Constructor Details

    • TimeAverageMessageData

      public TimeAverageMessageData()
    • TimeAverageMessageData

      public TimeAverageMessageData(int maxSamples)
      Initialize this TimeAverageData to 0 values.
      Parameters:
      maxSamples - The maximum number of samples with which to maintain the average.
    • TimeAverageMessageData

      public TimeAverageMessageData(int maxSamples, NamespaceBundleStats defaultStats)
      Initialize this TimeAverageData using default stats.
      Parameters:
      maxSamples - The maximum number of samples with which to maintain the average.
      defaultStats - The stats to default to. These are overwritten after the first update.
  • Method Details

    • update

      public void update(double newMsgThroughputIn, double newMsgThroughputOut, double newMsgRateIn, double newMsgRateOut)
      Update using new samples for the message data.
      Parameters:
      newMsgThroughputIn - Most recently observed throughput in.
      newMsgThroughputOut - Most recently observed throughput out.
      newMsgRateIn - Most recently observed message rate in.
      newMsgRateOut - Most recently observed message rate out.
    • update

      public void update(NamespaceBundleStats newSample)
      Update using a new bundle sample.
      Parameters:
      newSample - Most recently observed bundle stats.
    • getMaxSamples

      public int getMaxSamples()
    • setMaxSamples

      public void setMaxSamples(int maxSamples)
    • getNumSamples

      public int getNumSamples()
    • setNumSamples

      public void setNumSamples(int numSamples)
    • getMsgThroughputIn

      public double getMsgThroughputIn()
    • setMsgThroughputIn

      public void setMsgThroughputIn(double msgThroughputIn)
    • getMsgThroughputOut

      public double getMsgThroughputOut()
    • setMsgThroughputOut

      public void setMsgThroughputOut(double msgThroughputOut)
    • getMsgRateIn

      public double getMsgRateIn()
    • setMsgRateIn

      public void setMsgRateIn(double msgRateIn)
    • getMsgRateOut

      public double getMsgRateOut()
    • setMsgRateOut

      public void setMsgRateOut(double msgRateOut)
    • totalMsgRate

      public double totalMsgRate()
      Get the total message rate.
      Returns:
      Message rate in + message rate out.
    • totalMsgThroughput

      public double totalMsgThroughput()
      Get the total message throughput.
      Returns:
      Message throughput in + message throughput out.