public abstract class DynamicLoadBalancingBase extends BaseLoadBalancing
LoadMeasureAgent
and
accumulates them in the local attribute.Modifier and Type | Field and Description |
---|---|
protected java.util.Hashtable<java.lang.String,PlatformLoad> |
loadContainer
The load distributed over container.
|
protected LoadAgentMap |
loadContainerAgentMap
The LoadAgentMap.
|
protected java.util.Hashtable<java.lang.String,LoadMerger> |
loadJVM4Balancing
The load information distributed over all JVM's.
|
protected java.util.Hashtable<java.lang.String,LoadMerger> |
loadMachines4Balancing
The load information distributed over all machines.
|
protected java.lang.String[] |
machineArray
The Array for all machine names
|
protected float |
machinesBenchmarkSummation
the summation of all benchmark values
|
protected LoadMeasureAgent |
myLoadAgent
The reference to the load agent.
|
protected int |
noAgents
The number of agents in the system.
|
protected int |
noMachines
The number of machines.
|
currContainerBenchmarkResults, currContainerLoactions, currDisSetup, currProject, currSimSetup, currThresholdExceededOverAll, currThresholdLevels, loadHelper, simHelper
Constructor and Description |
---|
DynamicLoadBalancingBase(LoadMeasureAgent loadMeasureAgent)
Default constructor of this class.
|
Modifier and Type | Method and Description |
---|---|
void |
action() |
protected void |
refreshCountingsAndLists()
Here some important counting will be done by default.
|
protected void |
setMeasurements()
This method transfers the measurement data from the loadAgent
to this class.
|
protected java.lang.String |
startRemoteContainer()
This Method can be invoked, if a new remote container is required.
|
protected java.lang.String |
startRemoteContainer(RemoteContainerConfig remoteContainerConfig)
This Method can be invoked, if a new remote container is required.
|
protected void |
updateLoadInfo4JVMandMachine(java.lang.String newContainerName)
Updates the local load information if a new container was started.
|
getStartArguments, openMonitorAgents, setAgentMigration, startAgent, startAgent, startAgent, startAgent, startAgentsOnContainers, startNumberOfRemoteContainer
actionWrapper, block, block, getAgent, getBehaviourName, getDataStore, getExecutionState, getParent, getRestartCounter, handle, handleBlockEvent, handleRestartEvent, isRunnable, onEnd, onStart, restart, root, setAgent, setBehaviourName, setDataStore, setExecutionState
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
doBalancing
protected LoadMeasureAgent myLoadAgent
protected java.util.Hashtable<java.lang.String,LoadMerger> loadMachines4Balancing
protected java.util.Hashtable<java.lang.String,LoadMerger> loadJVM4Balancing
protected java.util.Hashtable<java.lang.String,PlatformLoad> loadContainer
protected LoadAgentMap loadContainerAgentMap
protected int noMachines
protected java.lang.String[] machineArray
protected int noAgents
protected float machinesBenchmarkSummation
public DynamicLoadBalancingBase(LoadMeasureAgent loadMeasureAgent)
loadMeasureAgent
- the running load agent of the systempublic void action()
action
in class BaseLoadBalancing
protected void setMeasurements()
protected void refreshCountingsAndLists()
protected void updateLoadInfo4JVMandMachine(java.lang.String newContainerName)
BaseLoadBalancing.currThresholdExceededOverAll
, loadMachines4Balancing
and loadJVM4Balancing
.Additionally the method refreshCountingsAndLists()
will be invoked at the end.newContainerName
- the new container nameBaseLoadBalancing.currThresholdExceededOverAll
,
loadMachines4Balancing
,
loadJVM4Balancing
,
refreshCountingsAndLists()
protected java.lang.String startRemoteContainer()
BaseLoadBalancing.currContainerLoactions
and
BaseLoadBalancing.currContainerBenchmarkResults
.updateLoadInfo4JVMandMachine(String)
.startRemoteContainer
in class BaseLoadBalancing
BaseLoadBalancing.currContainerLoactions
,
BaseLoadBalancing.currContainerBenchmarkResults
protected java.lang.String startRemoteContainer(RemoteContainerConfig remoteContainerConfig)
BaseLoadBalancing.currContainerLoactions
and
BaseLoadBalancing.currContainerBenchmarkResults
.updateLoadInfo4JVMandMachine(String)
.startRemoteContainer
in class BaseLoadBalancing
remoteContainerConfig
- the remote container configuration out of the ProjectBaseLoadBalancing.currContainerLoactions
,
BaseLoadBalancing.currContainerBenchmarkResults