|
GigaSpaces XAP 9.7.2 API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment org.openspaces.admin.pu.elastic.ElasticStatefulProcessingUnitDeployment
public class ElasticStatefulProcessingUnitDeployment
Defines an elastic deployment of a processing unit that with an embedded space.. The advantage of this topology is that the code can access the data without the network/serialization overhead and that space events can be used as code triggers. The disadvantage compared to a stateless processing unit is that the ratio between the minimum and maximum number of containers is limited.
ElasticStatefulProcessingUnitDeployment
Constructor Summary | |
---|---|
ElasticStatefulProcessingUnitDeployment(File processingUnit)
Constructs a stateful processing unit deployment based on the specified processing unit file path (points either to a processing unit jar/zip file or a directory). |
|
ElasticStatefulProcessingUnitDeployment(String processingUnit)
Constructs a stateful processing unit deployment based on the specified processing unit name (should exists under the [GS ROOT]/deploy directory. |
Method Summary | |
---|---|
ElasticStatefulProcessingUnitDeployment |
addCommandLineArgument(String vmInputArgument)
Will add a JVM level argument when the process is executed using pure JVM. |
ElasticStatefulProcessingUnitDeployment |
addContextProperty(String key,
String value)
Defines a context deploy time property overriding any ${...} |
ElasticStatefulProcessingUnitDeployment |
addDependencies(org.openspaces.admin.internal.pu.dependency.ProcessingUnitDetailedDependencies<? extends ProcessingUnitDependency> detailedDependencies)
Postpones deployment of processing unit instances until the specified dependencies are met. |
ElasticStatefulProcessingUnitDeployment |
addDependency(String requiredProcessingUnitName)
Postpones deployment of processing unit instances deployment until the specified processing unit deployment is complete. |
ElasticStatefulProcessingUnitDeployment |
addEnvironmentVariable(String name,
String value)
Defines an environment variable that will be passed to forked process. |
ElasticStatefulProcessingUnitDeployment |
commandLineArgument(String vmInputArgument)
Will add a JVM level argument when the process is executed using pure JVM. |
ElasticStatefulProcessingUnitConfig |
create()
Converts this fluent API object to a lazy implementation of ProcessingUnitConfig |
ElasticStatefulProcessingUnitDeployment |
dedicatedMachineProvisioning(ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically. |
ElasticStatefulProcessingUnitDeployment |
environmentVariable(String name,
String value)
Sets an environment variable that will be passed to forked process. |
protected ElasticStatefulProcessingUnitConfig |
getConfig()
|
ElasticStatefulProcessingUnitDeployment |
highlyAvailable(boolean highlyAvailable)
Specifies if the space should duplicate each information on two different machines. |
ElasticStatefulProcessingUnitDeployment |
maxMemoryCapacity(int maxMemoryCapacity,
MemoryUnit unit)
Specifies an estimate of the maximum memory capacity for this processing unit. |
ElasticStatefulProcessingUnitDeployment |
maxMemoryCapacity(String maxMemoryCapacity)
Specifies an estimate of the minimum memory capacity for this processing unit. |
ElasticStatefulProcessingUnitDeployment |
maxNumberOfCpuCores(int maxNumberOfCpuCores)
Specifies an estimate for the maximum total number of cpu cores used by this processing unit. |
protected ElasticStatefulProcessingUnitDeployment |
maxProcessingUnitInstancesFromSamePartitionPerMachine(int maxProcessingUnitInstancesFromSamePartitionPerMachine)
|
ElasticStatefulProcessingUnitDeployment |
memoryCapacityPerContainer(int memoryCapacityPerContainer,
MemoryUnit unit)
Specifies the the heap size per container (operating system process) For example: memoryCapacityPerContainer(256,MemoryUnit.MEGABYTES) is equivalent to commandLineArgument("-Xmx256m").commandLineArgument("-Xms256m") |
ElasticStatefulProcessingUnitDeployment |
memoryCapacityPerContainer(String memoryCapacityPerContainer)
Specifies the the heap size per container (operating system process) For example: memoryCapacityPerContainer("256m") is equivalent to commandLineArgument("-Xmx256m").commandLineArgument("-Xms256m") |
ElasticStatefulProcessingUnitDeployment |
minNumberOfCpuCoresPerMachine(double minNumberOfCpuCoresPerMachine)
Deprecated. |
ElasticStatefulProcessingUnitDeployment |
name(String name)
Sets the processing unit name that will be deployed. |
ElasticStatefulProcessingUnitDeployment |
numberOfBackupsPerPartition(int numberOfBackupsPerPartition)
Overrides the number of backup processing unit instances per partition. |
ElasticStatefulProcessingUnitDeployment |
numberOfPartitions(int numberOfPartitions)
Defines the number of processing unit partitions. |
ElasticStatefulProcessingUnitDeployment |
overrideCommandLineArguments()
Will cause JVM options added using AbstractElasticProcessingUnitDeployment.commandLineArgument(String) to override all the vm arguments
that the JVM will start by default with. |
ElasticStatefulProcessingUnitDeployment |
publicMachineProvisioning(ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically. |
ElasticStatefulProcessingUnitDeployment |
scale(EagerScaleConfig strategy)
Enables the specified scale strategy, and disables all other scale strategies. |
ElasticStatefulProcessingUnitDeployment |
scale(ManualCapacityScaleConfig strategy)
Enables the specified scale strategy, and disables all other scale strategies. |
ElasticStatefulProcessingUnitDeployment |
secured(boolean secured)
Will deploy a secured processing unit. |
ElasticStatefulProcessingUnitDeployment |
sharedMachineProvisioning(String sharingId,
ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically. |
ElasticStatefulProcessingUnitDeployment |
singleMachineDeployment()
Allows deployment of the processing unit on a single machine, by lifting the limitation for primary and backup processing unit instances from the same partition to be deployed on different machines. |
ElasticStatefulProcessingUnitDeployment |
userDetails(String userName,
String password)
Advanced: Sets the security user details for authentication and authorization of the processing unit. |
ElasticStatefulProcessingUnitDeployment |
userDetails(UserDetails userDetails)
Advanced: Sets the security user details for authentication and authorization of the processing unit. |
ElasticStatefulProcessingUnitDeployment |
useScriptToStartContainer()
Will cause the GridServiceContainer to be started using a script
and not a pure Java process. |
Methods inherited from class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment |
---|
addContextPropertyDefault, getElasticProperties, scale, sharedMachineProvisioning |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ElasticStatefulProcessingUnitDeployment(String processingUnit)
[GS ROOT]/deploy
directory.
public ElasticStatefulProcessingUnitDeployment(File processingUnit)
Method Detail |
---|
public ElasticStatefulProcessingUnitDeployment maxMemoryCapacity(int maxMemoryCapacity, MemoryUnit unit)
ElasticStatefulDeploymentTopology
maxMemoryCapacity
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment maxMemoryCapacity(String maxMemoryCapacity)
ElasticStatefulDeploymentTopology
maxMemoryCapacity
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment highlyAvailable(boolean highlyAvailable)
ElasticStatefulDeploymentTopology
highlyAvailable
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment numberOfBackupsPerPartition(int numberOfBackupsPerPartition)
AdvancedStatefulDeploymentTopology
numberOfBackupsPerPartition
in interface AdvancedStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment numberOfPartitions(int numberOfPartitions)
AdvancedStatefulDeploymentTopology
ElasticStatefulDeploymentTopology.maxMemoryCapacity(String)
and ElasticStatefulDeploymentTopology.maxNumberOfCpuCores(int)
.
This is an advanced property.
numberOfPartitions
in interface AdvancedStatefulDeploymentTopology
protected ElasticStatefulProcessingUnitDeployment maxProcessingUnitInstancesFromSamePartitionPerMachine(int maxProcessingUnitInstancesFromSamePartitionPerMachine)
public ElasticStatefulProcessingUnitDeployment maxNumberOfCpuCores(int maxNumberOfCpuCores)
ElasticStatefulDeploymentTopology
maxNumberOfCpuCores
in interface ElasticStatefulDeploymentTopology
@Deprecated public ElasticStatefulProcessingUnitDeployment minNumberOfCpuCoresPerMachine(double minNumberOfCpuCoresPerMachine)
ElasticMachineProvisioningConfig.getMinimumNumberOfCpuCoresPerMachine()
public ElasticStatefulProcessingUnitDeployment memoryCapacityPerContainer(int memoryCapacityPerContainer, MemoryUnit unit)
ElasticDeploymentTopology
memoryCapacityPerContainer
in interface ElasticDeploymentTopology
memoryCapacityPerContainer
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment memoryCapacityPerContainer(String memoryCapacityPerContainer)
ElasticDeploymentTopology
memoryCapacityPerContainer
in interface ElasticDeploymentTopology
memoryCapacityPerContainer
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment singleMachineDeployment()
AdvancedStatefulDeploymentTopology
singleMachineDeployment
in interface AdvancedStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment scale(EagerScaleConfig strategy)
EagerScaleTopology
scale
in interface EagerScaleTopology
EagerScaleConfig
,
EagerScaleConfigurer
public ElasticStatefulProcessingUnitDeployment scale(ManualCapacityScaleConfig strategy)
ManualCapacityScaleTopology
scale
in interface ManualCapacityScaleTopology
ManualCapacityScaleConfig
,
ManualCapacityScaleConfigurer
public ElasticStatefulProcessingUnitDeployment name(String name)
ElasticDeploymentTopology
name
in interface ElasticDeploymentTopology
name
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addContextProperty(String key, String value)
ElasticDeploymentTopology
${...}
defined within a processing
unit configuration.
addContextProperty
in interface ElasticDeploymentTopology
addContextProperty
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment secured(boolean secured)
ProcessingUnitDeploymentTopology
secured
in interface ProcessingUnitDeploymentTopology
secured
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment userDetails(UserDetails userDetails)
ProcessingUnitDeploymentTopology
userDetails
in interface ProcessingUnitDeploymentTopology
userDetails
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment userDetails(String userName, String password)
ProcessingUnitDeploymentTopology
userDetails
in interface ProcessingUnitDeploymentTopology
userDetails
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment useScriptToStartContainer()
org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
GridServiceContainer
to be started using a script
and not a pure Java process.
useScriptToStartContainer
in interface ElasticDeploymentTopology
useScriptToStartContainer
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment overrideCommandLineArguments()
org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
AbstractElasticProcessingUnitDeployment.commandLineArgument(String)
to override all the vm arguments
that the JVM will start by default with.
overrideCommandLineArguments
in interface ElasticDeploymentTopology
overrideCommandLineArguments
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment commandLineArgument(String vmInputArgument)
org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
-Xmx512m
.
commandLineArgument
in interface ElasticDeploymentTopology
commandLineArgument
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addCommandLineArgument(String vmInputArgument)
ElasticDeploymentTopology
-Xmx512m
.
addCommandLineArgument
in interface ElasticDeploymentTopology
public ElasticStatefulProcessingUnitDeployment environmentVariable(String name, String value)
org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
environmentVariable
in interface ElasticDeploymentTopology
environmentVariable
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addEnvironmentVariable(String name, String value)
ElasticDeploymentTopology
addEnvironmentVariable
in interface ElasticDeploymentTopology
public ElasticStatefulProcessingUnitDeployment dedicatedMachineProvisioning(ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be dedicated to the instances of this processing unit. In other words, this processing unit will not share the machines with other processing units.
See also DiscoveredMachineProvisioningConfig
for configuring deployment on a non-virtualized environment. Machines are discovered
if 'Grid Service Agents' are running on them.
dedicatedMachineProvisioning
in interface ElasticDeploymentTopology
dedicatedMachineProvisioning
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
ElasticDeploymentTopology.sharedMachineProvisioning(String, ElasticMachineProvisioningConfig)
public ElasticStatefulProcessingUnitDeployment publicMachineProvisioning(ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be shared by any other instance using publicMachineProvisioning or any non-elastic processing unit instance.
publicMachineProvisioning
in interface ElasticDeploymentTopology
publicMachineProvisioning
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment sharedMachineProvisioning(String sharingId, ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be shared by other processing unit instances with the same sharingId.
See also DiscoveredMachineProvisioningConfig
for configuring deployment on a
non-virtualized environment. Machines are discovered if 'Grid Service Agents' are running on
them.
sharedMachineProvisioning
in interface ElasticDeploymentTopology
ElasticDeploymentTopology.dedicatedMachineProvisioning(ElasticMachineProvisioningConfig)
public ElasticStatefulProcessingUnitDeployment addDependency(String requiredProcessingUnitName)
ProcessingUnitDeploymentTopology
addDependency
in interface ProcessingUnitDeploymentTopology
public ElasticStatefulProcessingUnitDeployment addDependencies(org.openspaces.admin.internal.pu.dependency.ProcessingUnitDetailedDependencies<? extends ProcessingUnitDependency> detailedDependencies)
ProcessingUnitDeploymentTopology
addDependencies
in interface ProcessingUnitDeploymentTopology
addDependencies
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
ProcessingUnitDeploymentDependenciesConfigurer
public ElasticStatefulProcessingUnitConfig create()
ProcessingUnitDeploymentTopology
create
in interface ProcessingUnitDeploymentTopology
protected ElasticStatefulProcessingUnitConfig getConfig()
getConfig
in class org.openspaces.admin.internal.pu.elastic.AbstractElasticProcessingUnitDeployment
|
GigaSpaces XAP 9.7.2 API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |