org.apache.storm.scheduler.resource.strategies.priority

## Class DefaultSchedulingPriorityStrategy.SimulatedUser

- java.lang.Object
- - org.apache.storm.scheduler.resource.strategies.priority.DefaultSchedulingPriorityStrategy.SimulatedUser

- Direct Known Subclasses:
    FIFOSchedulingPriorityStrategy.FIFOSimulatedUser, GenericResourceAwareSchedulingPriorityStrategy.GrasSimulatedUser
  Enclosing class:
    DefaultSchedulingPriorityStrategy

      protected static class DefaultSchedulingPriorityStrategy.SimulatedUser
      extends Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected double` | `assignedCpu`
    `protected double` | `assignedMemory`
    `double` | `guaranteedCpu`
    `double` | `guaranteedMemory`
    `protected LinkedList<TopologyDetails>` | `tds`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimulatedUser(User other, ISchedulingState cluster)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TopologyDetails` | `getNextHighest()`
    `double` | `getScore(double availableCpu, double availableMemory)`
    `protected double` | `getScore(double availableCpu, double availableMemory, TopologyDetails td)` Get a score for the simulated user.
    `TopologyDetails` | `simScheduleNextHighest()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### guaranteedCpu

          public final double guaranteedCpu

    - #### guaranteedMemory

          public final double guaranteedMemory

    - #### tds

          protected final LinkedList<TopologyDetails> tds

    - #### assignedCpu

          protected double assignedCpu

    - #### assignedMemory

          protected double assignedMemory

  - ### Constructor Detail

    - #### SimulatedUser

          public SimulatedUser(User other,
                               ISchedulingState cluster)

  - ### Method Detail

    - #### getNextHighest

          public TopologyDetails getNextHighest()

    - #### simScheduleNextHighest

          public TopologyDetails simScheduleNextHighest()

    - #### getScore

          protected double getScore(double availableCpu,
                                    double availableMemory,
                                    TopologyDetails td)

      Get a score for the simulated user. This is used to sort the users, by their highest priority topology. The only requirement is that if the user is over their guarantees, or there are no available resources the returned score will be > 0. If they are under their guarantee it must be negative.

      Parameters:
        `availableCpu` - available CPU on the cluster.
        `availableMemory` - available memory on the cluster.
        `td` - the topology we are looking at.
      Returns:
        the score.

    - #### getScore

          public double getScore(double availableCpu,
                                 double availableMemory)

Copyright © 2021 The Apache Software Foundation. All rights reserved.