Class EWMA

    • Constructor Summary

      Constructors 
      Constructor Description
      EWMA​(double alpha, long interval, TimeUnit intervalUnit)
      Create a new EWMA with a specific smoothing constant.
    • Constructor Detail

      • EWMA

        public EWMA​(double alpha,
                    long interval,
                    TimeUnit intervalUnit)
        Create a new EWMA with a specific smoothing constant.
        Parameters:
        alpha - the smoothing constant
        interval - the expected tick interval
        intervalUnit - the time unit of the tick interval
    • Method Detail

      • oneMinuteEWMA

        public static EWMA oneMinuteEWMA()
        Creates a new EWMA which is equivalent to the UNIX one minute load average and which expects to be ticked every 5 seconds.
        Returns:
        a one-minute EWMA
      • fiveMinuteEWMA

        public static EWMA fiveMinuteEWMA()
        Creates a new EWMA which is equivalent to the UNIX five minute load average and which expects to be ticked every 5 seconds.
        Returns:
        a five-minute EWMA
      • fifteenMinuteEWMA

        public static EWMA fifteenMinuteEWMA()
        Creates a new EWMA which is equivalent to the UNIX fifteen minute load average and which expects to be ticked every 5 seconds.
        Returns:
        a fifteen-minute EWMA
      • update

        public void update​(long n)
        Update the moving average with a new value.
        Parameters:
        n - the new value
      • tick

        public void tick()
        Mark the passage of time and decay the current rate accordingly.
      • getRate

        public double getRate​(TimeUnit rateUnit)
        Returns the rate in the given units of time.
        Parameters:
        rateUnit - the unit of time
        Returns:
        the rate