public class EvenScheduler extends Object implements IScheduler
| Constructor and Description |
|---|
EvenScheduler() |
| Modifier and Type | Method and Description |
|---|---|
Map<String,Map<String,Double>> |
config()
This function returns the scheduler’s configuration.
|
static Map<WorkerSlot,List<ExecutorDetails>> |
getAliveAssignedWorkerSlotExecutors(Cluster cluster,
String topologyId) |
void |
prepare(Map<String,Object> conf) |
void |
schedule(Topologies topologies,
Cluster cluster)
Set assignments for the topologies which needs scheduling.
|
static void |
scheduleTopologiesEvenly(Topologies topologies,
Cluster cluster) |
static List<WorkerSlot> |
sortSlots(List<WorkerSlot> availableSlots) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcleanuppublic static List<WorkerSlot> sortSlots(List<WorkerSlot> availableSlots)
public static Map<WorkerSlot,List<ExecutorDetails>> getAliveAssignedWorkerSlotExecutors(Cluster cluster, String topologyId)
public static void scheduleTopologiesEvenly(Topologies topologies, Cluster cluster)
public void prepare(Map<String,Object> conf)
prepare in interface ISchedulerpublic void schedule(Topologies topologies, Cluster cluster)
ISchedulerSet assignments for the topologies which needs scheduling. The new assignments is available through cluster.getAssignments()
schedule in interface ISchedulertopologies - all the topologies in the cluster, some of them need schedule. Topologies object here only contain static information about topologies. Information like assignments, slots are all in the cluster object.cluster - the cluster these topologies are running in. cluster contains everything user need to develop a new scheduling logic. e.g. supervisors information, available slots, current assignments for all the topologies etc. User can set the new assignment for topologies using cluster.setAssignmentById()`public Map<String,Map<String,Double>> config()
ISchedulerThis function returns the scheduler’s configuration.
config in interface ISchedulerCopyright © 2019 The Apache Software Foundation. All rights reserved.