hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling
Class RandomScheduler

java.lang.Object
  extended by hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler
      extended by hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.FirstFitScheduler
          extended by hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.RandomScheduler

public class RandomScheduler
extends FirstFitScheduler

Provides a scheduler that uses the random PM iterator to traverse through the IaaS's running machines list. This ensures uniform use of the PMs on the long run. Other than the random PM selection this class utilizes the FirstFitScheduler's logic of VM placement and queue management.

Author:
"Gabor Kecskemeti, Laboratory of Parallel and Distributed Systems, MTA SZTAKI (c) 2015"

Nested Class Summary
 
Nested classes/interfaces inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler
Scheduler.QueueingEvent
 
Field Summary
 
Fields inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.FirstFitScheduler
raBiggestNotSuitable, ras
 
Fields inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler
freeCapacity, parent, pmComparator, pmstateChanged, publicTQ, queue
 
Constructor Summary
RandomScheduler(IaaSService parent)
          Passes the IaaSService further to its super class.
 
Method Summary
protected  PMIterator instantiateIterator()
          Returns with the Random PM iterator.
 
Methods inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.FirstFitScheduler
getPMIterator, scheduleQueued
 
Methods inherited from class hu.mta.sztaki.lpds.cloud.simulator.iaas.vmscheduling.Scheduler
dropVMrequest, getQueuedVMs, getQueueLength, getTotalQueued, manageQueueRemoval, manageQueueRemoval, scheduleVMrequest, subscribeQueueingEvents, unsubscribeQueueingEvents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomScheduler

public RandomScheduler(IaaSService parent)
Passes the IaaSService further to its super class.

Parameters:
parent - the IaaS Service which this RandomScheduler operates on
Method Detail

instantiateIterator

protected PMIterator instantiateIterator()
Returns with the Random PM iterator.

Overrides:
instantiateIterator in class FirstFitScheduler
Returns:
the desired PM iterator to be used for traversing the PMs while doing the scheduling


Copyright © 2012–2015 University of Innsbruck & MTA SZTAKI. All rights reserved.