public class AutomaticCapacityScaleConfig extends Object implements ScaleStrategyConfig, ScaleStrategyAgentZonesAwareConfig, Externalizable
AutomaticCapacityScaleConfigurer
,
Serialized FormConstructor and Description |
---|
AutomaticCapacityScaleConfig()
Default constructor
|
AutomaticCapacityScaleConfig(Map<String,String> properties) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
String |
getBeanClassName()
The
Bean implementation class name corresponding to this BeanConfig. |
long |
getCooldownAfterScaleInSeconds() |
long |
getCooldownAfterScaleOutSeconds() |
long |
getCooldownAfterScaleSeconds()
Deprecated.
|
CapacityRequirementsConfig |
getInitialCapacity() |
CapacityRequirementsConfig |
getMaxCapacity() |
CapacityRequirementsConfig |
getMaxCapacityPerZone() |
int |
getMaxConcurrentRelocationsPerMachine() |
CapacityRequirementsConfig |
getMinCapacity() |
CapacityRequirementsConfig |
getMinCapacityPerZone() |
int |
getPollingIntervalSeconds() |
Map<String,String> |
getProperties()
Get the String key-value pairs properties used to configure this bean.
|
AutomaticCapacityScaleRuleConfig[] |
getRules() |
long |
getStatisticsPollingIntervalSeconds() |
int |
hashCode() |
boolean |
isAllowAboveAverageMemoryPerMachine() |
boolean |
isAtMostOneConcurrentRelocation() |
boolean |
isAtMostOneContainerPerMachine() |
boolean |
isGridServiceAgentZonesAware() |
void |
readExternal(ObjectInput in) |
void |
setAllowAboveAverageMemoryPerMachine(boolean allowAboveAverageMemoryPerMachine)
Allows a single machine to accommodate for more than the average maximum memory allocation of
a Processing Unit.
|
void |
setAtMostOneConcurrentRelocation(boolean atMostOneConcurrentRelocation)
Limits the number of concurrent relocations for the entire cluster to 1.
|
void |
setAtMostOneContainerPerMachine(boolean atMostOneContainerPerMachine)
When set to true, at most one Grid Service Container for this Processing Unit is started per
machine.
|
void |
setCooldownAfterScaleInSeconds(long cooldownAfterInstanceRemovedSeconds)
Sets the number of seconds after a
ProcessingUnitInstance is removed and the ProcessingUnit.getStatus() is DeploymentStatus.INTACT that all scaling rules are
disabled. |
void |
setCooldownAfterScaleOutSeconds(long cooldownAfterInstanceAddedSeconds)
Sets the number of seconds after a
ProcessingUnitInstance is added and the ProcessingUnit.getStatus() is DeploymentStatus.INTACT that all scaling rules are
disabled. |
void |
setCooldownAfterScaleSeconds(long cooldownAfterInstanceRemovedSeconds)
Deprecated.
|
void |
setGridServiceAgentZonesAware(boolean enableAgentZonesAware)
By default disabled, which means that the following machines: - Machines started due to
failover of another machine.
|
void |
setInitialCapacity(CapacityRequirementsConfig initialCapacity) |
void |
setMaxCapacity(CapacityRequirementsConfig maxCapacity)
Sets the maximum scale capacity that the @{link
ProcessingUnit is deployed with. |
void |
setMaxCapacityPerZone(CapacityRequirementsConfig maxCapacityPerZone)
Sets the maximum scale capacity per agent zone that the @{link
ProcessingUnit is
deployed with. |
void |
setMaxConcurrentRelocationsPerMachine(int maxNumberOfConcurrentRelocationsPerMachine)
Specifies the number of processing unit instance relocations each machine can handle
concurrently.
|
void |
setMinCapacity(CapacityRequirementsConfig minCapacity)
Sets the minimum scale capacity that the @{link
ProcessingUnit is deployed with. |
void |
setMinCapacityPerZone(CapacityRequirementsConfig minCapacityPerZone)
Sets the minimum scale capacity per agent zone that the @{link
ProcessingUnit is
deployed with. |
void |
setPollingIntervalSeconds(int pollingTimeIntervalSeconds)
Sets the polling interval in which the scale strategy SLA is monitored and enforced.
|
void |
setProperties(Map<String,String> properties)
Set with String key-value pairs to configure properties belonging to this bean.
|
void |
setRules(AutomaticCapacityScaleRuleConfig[] rules) |
void |
setStatisticsPollingIntervalSeconds(int statisticsPollingIntervalSeconds)
Sets the polling rate in which statistics are gathered.
|
String |
toString() |
void |
writeExternal(ObjectOutput out) |
public AutomaticCapacityScaleConfig()
public Map<String,String> getProperties()
BeanConfig
getProperties
in interface BeanConfig
public void setProperties(Map<String,String> properties)
BeanConfig
setProperties
in interface BeanConfig
properties
- the properties to configure this bean object.public String getBeanClassName()
BeanConfig
Bean
implementation class name corresponding to this BeanConfig.getBeanClassName
in interface BeanConfig
public int getMaxConcurrentRelocationsPerMachine()
getMaxConcurrentRelocationsPerMachine
in interface ScaleStrategyConfig
public void setMaxConcurrentRelocationsPerMachine(int maxNumberOfConcurrentRelocationsPerMachine)
ScaleStrategyConfig
setMaxConcurrentRelocationsPerMachine
in interface ScaleStrategyConfig
public void setAtMostOneConcurrentRelocation(boolean atMostOneConcurrentRelocation)
ScaleStrategyConfig
setAtMostOneConcurrentRelocation
in interface ScaleStrategyConfig
ScaleStrategyConfig.setMaxConcurrentRelocationsPerMachine(int)
public boolean isAtMostOneConcurrentRelocation()
isAtMostOneConcurrentRelocation
in interface ScaleStrategyConfig
public void setAllowAboveAverageMemoryPerMachine(boolean allowAboveAverageMemoryPerMachine)
ScaleStrategyConfig
setAllowAboveAverageMemoryPerMachine
in interface ScaleStrategyConfig
public boolean isAllowAboveAverageMemoryPerMachine()
isAllowAboveAverageMemoryPerMachine
in interface ScaleStrategyConfig
public void setPollingIntervalSeconds(int pollingTimeIntervalSeconds)
ScaleStrategyConfig
setPollingIntervalSeconds
in interface ScaleStrategyConfig
pollingTimeIntervalSeconds
- - the polling interval in secondspublic int getPollingIntervalSeconds()
getPollingIntervalSeconds
in interface ScaleStrategyConfig
public boolean isAtMostOneContainerPerMachine()
isAtMostOneContainerPerMachine
in interface ScaleStrategyConfig
public void setAtMostOneContainerPerMachine(boolean atMostOneContainerPerMachine)
ScaleStrategyConfig
setAtMostOneContainerPerMachine
in interface ScaleStrategyConfig
public void setStatisticsPollingIntervalSeconds(int statisticsPollingIntervalSeconds)
public long getStatisticsPollingIntervalSeconds()
public void setCooldownAfterScaleOutSeconds(long cooldownAfterInstanceAddedSeconds)
ProcessingUnitInstance
is added and the ProcessingUnit.getStatus()
is DeploymentStatus.INTACT
that all scaling rules are
disabled.
Must be equal or bigger than setStatisticsPollingIntervalSeconds(int)
public long getCooldownAfterScaleOutSeconds()
@Deprecated public void setCooldownAfterScaleSeconds(long cooldownAfterInstanceRemovedSeconds)
setCooldownAfterScaleInSeconds(long)
public void setCooldownAfterScaleInSeconds(long cooldownAfterInstanceRemovedSeconds)
ProcessingUnitInstance
is removed and the ProcessingUnit.getStatus()
is DeploymentStatus.INTACT
that all scaling rules are
disabled.
Must be equal or bigger than setStatisticsPollingIntervalSeconds(int)
@Deprecated public long getCooldownAfterScaleSeconds()
getCooldownAfterScaleInSeconds()
public long getCooldownAfterScaleInSeconds()
public void setMinCapacity(CapacityRequirementsConfig minCapacity)
ProcessingUnit
is deployed with.
The result of a scaling rule result that decreases capacity will never breach the minimum
scale capacity.public CapacityRequirementsConfig getMinCapacity()
public void setMaxCapacity(CapacityRequirementsConfig maxCapacity)
ProcessingUnit
is deployed with.
The result of a scaling rule result that increases capacity will never breach the maximum
scale capacity.public CapacityRequirementsConfig getMinCapacityPerZone()
public void setMinCapacityPerZone(CapacityRequirementsConfig minCapacityPerZone)
ProcessingUnit
is
deployed with.
The result of a scaling rule result that increases capacity will never breach the minimum
scale capacity per agent zone.
This attribute should be used together with setGridServiceAgentZonesAware(boolean)
enabled.public CapacityRequirementsConfig getMaxCapacityPerZone()
public void setMaxCapacityPerZone(CapacityRequirementsConfig maxCapacityPerZone)
ProcessingUnit
is
deployed with.
The result of a scaling rule result that increases capacity will never breach the maximum
scale capacity per agent zone.
This attribute should be used together with setGridServiceAgentZonesAware(boolean)
enabled.public void setRules(AutomaticCapacityScaleRuleConfig[] rules)
public AutomaticCapacityScaleRuleConfig[] getRules()
public CapacityRequirementsConfig getMaxCapacity()
public void setInitialCapacity(CapacityRequirementsConfig initialCapacity)
public CapacityRequirementsConfig getInitialCapacity()
public boolean isGridServiceAgentZonesAware()
isGridServiceAgentZonesAware
in interface ScaleStrategyAgentZonesAwareConfig
public void setGridServiceAgentZonesAware(boolean enableAgentZonesAware)
ScaleStrategyAgentZonesAwareConfig
AutomaticCapacityScaleRuleConfig
sue to threshold breach are started with a Grid Service Agent zones as described in #getGridServiceAgentZones()
When enabled, these machines are started with the same ExactZonesConfig
as the failed
machine, or the same ExactZonesConfig
as the machines whose threshold was breached.setGridServiceAgentZonesAware
in interface ScaleStrategyAgentZonesAwareConfig
public String toString()
toString
in interface ScaleStrategyConfig
toString
in class Object
public int hashCode()
hashCode
in interface ScaleStrategyConfig
hashCode
in class Object
public boolean equals(Object obj)
equals
in interface ScaleStrategyConfig
equals
in class Object
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
IOException
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
IOException
ClassNotFoundException
Copyright © GigaSpaces.