IBM WebSphereTM eXtreme Scale, Release 8.6
API Specification

com.ibm.websphere.objectgrid.server
Interface CatalogServerProperties


public interface CatalogServerProperties

Defines a set of properties to be used at initialization by the ObjectGrid server runtime. This property object is used to determine if this process will act as a catalog service and if so the properties of the catalog service.

Since:
WAS XD 6.1 FIX3

Field Summary
static String DEFAULT_DOMAIN
          The default name for a catalog service domain.
static int HEARTBEAT_FREQUENCY_LEVEL_AGGRESSIVE
          Constant representing a heartbeat level at an aggressive rate.
static int HEARTBEAT_FREQUENCY_LEVEL_RELAXED
          Constant representing a heartbeat level at relaxed rate.
static int HEARTBEAT_FREQUENCY_LEVEL_TYPICAL
          Constant representing a heartbeat level at a typical rate.
static String ORB_TRANSPORT
          The Object Request Broker or ORB transport
static long PLACEMENT_DEFERRAL_INTERVAL_DEFAULT
          Constant representing the default interval for deferral of balancing and placement of work items to the containers
static String PROP_CATALOG_CLUSTER_END_POINTS
          The format of the string should be "serverName:hostName:clientPort:peerPort<,serverName:hostName:clientPort:peerPort>".
static String PROP_CATALOG_SERVER
          A boolean to indicate whether the server should start a catalog service.
static String PROP_DOMAIN_NAME
          Defines the domain name used to uniquely identify this catalog service grid to clients when routing to multiple domains.
static String PROP_ENABLE_MANAGEMENT_CONCENTRATOR
          Determines whether or not the initialization of the MBeanServer notifications concentrator
static String PROP_ENABLE_QUORUM
          Determines whether or not quorum is enabled.
static String PROP_FOREIGN_DOMAINS
          A bidirectional connection will be established to each of the foreign domains for the purpose of exchanging data in a multi-primary scenario.
static String PROP_HEARTBEAT_FREQUENCY_LEVEL
          Sets the heartbeat frequency level.
static String PROP_JMX_SERVICE_PORT
          Deprecated. Deprecated in version 7.1. Use ServerProperties.PROP_JMX_SERVICE_PORT instead
static String PROP_PLACEMENT_DEFERRAL_INTERVAL
          Determines the placement deferral interval.
static String PROP_SUFFIX_DOMAIN_ENDPOINTS
          Use this string as a suffix when reading and writing domain end points properties.
static String PROP_TRANSPORT
          Determines the transport on the catalog service domain for server to server communication
static String XIO_TRANSPORT
          The eXtremeIO or XIO transport
 
Method Summary
 String getCatalogClusterEndpoints()
          Retrieves the list of catalog service endpoints.
 URL getClusterSecurityURL()
          Retrieves the cluster security file location.
 String getDomainEndPoints(String domain)
          Retrieves the end points for the specified domain
 String getDomainName()
          Retrieves the name of the domain that this catalog service defines.
 String getForeignDomains()
          Get the current foreign domains.
 int getHeartBeatFrequencyLevel()
          Retrieves the heartbeat frequency level.
 long getPlacementDeferralInterval()
          Gets the placement deferral interval.
 boolean getQuorum()
          Returns whether or not this catalog service is enforcing quorum.
 String getServerSecurityFileName()
          Retrieves the server security file name.
 String getTransport()
          Returns the transport for the catalog service domain
 boolean isCatalogServer()
          Returns whether this process is defined as a catalog service or not.
 boolean isManagementConcentrator()
          Returns whether or not this catalog service is initialising the MBean notifications concentrator.
 void load(InputStream input)
          Loads the properties from input into this property object.
 void setCatalogClusterEndpoints(String clusterEndpoints)
          Sets the endpoint for each of the catalog service grid members.
 void setCatalogServer(boolean isCatalog)
          Defines this process as a catalog service if isCatalog is true.
 void setClusterSecurityURL(URL clusterSecurity)
          Sets the location of the security file specific to the catalog service.
 void setDomainEndPoints(String domain, String endPoints)
          Set end points for catalog servers in a foreign domain.
 void setDomainName(String domainName)
          Assigns the name of the ObjectGrid domain that this catalog service manages.
 void setForeignDomains(String foreignDomains)
          Set the foreign domains that this domain will communicate with to establish a multi-primary topology.
 void setHeartBeatFrequencyLevel(int frequencyLevel)
          Sets the heartbeat frequency level.
 void setManagementConcentrator(boolean enabled)
          Defines the behavior of this catalog service to enable the MBean notifications concentrator.
 void setPlacementDeferralInterval(long placementDeferralInterval)
          Sets the placement deferral interval.
 void setQuorum(boolean quorum)
          Defines the behavior of this catalog service to enable quorum.
 void setServerSecurityFileName(String serverSecurity)
          Sets the server security file name.
 void setTransport(String transport)
          Sets the transport for the catalog service domain
 void store(OutputStream output)
          Writes the properties from this object into output.
 

Field Detail

DEFAULT_DOMAIN

static final String DEFAULT_DOMAIN
The default name for a catalog service domain.

See Also:
setDomainName(String), Constant Field Values

PROP_DOMAIN_NAME

static final String PROP_DOMAIN_NAME
Defines the domain name used to uniquely identify this catalog service grid to clients when routing to multiple domains.

Since:
WAS XD 6.1.0.3
See Also:
setDomainName(String), Constant Field Values

PROP_ENABLE_QUORUM

static final String PROP_ENABLE_QUORUM
Determines whether or not quorum is enabled.

Since:
WAS XD 6.1.0.3
See Also:
setQuorum(boolean), Constant Field Values

PROP_ENABLE_MANAGEMENT_CONCENTRATOR

static final String PROP_ENABLE_MANAGEMENT_CONCENTRATOR
Determines whether or not the initialization of the MBeanServer notifications concentrator

Since:
8.6
See Also:
setManagementConcentrator(boolean), Constant Field Values

PROP_FOREIGN_DOMAINS

static final String PROP_FOREIGN_DOMAINS
A bidirectional connection will be established to each of the foreign domains for the purpose of exchanging data in a multi-primary scenario.

See the PROP_SUFFIX_DOMAIN_ENDPOINTS property for an example on how to set the end points for each foreign domain.

Since:
7.1
See Also:
Constant Field Values

PROP_SUFFIX_DOMAIN_ENDPOINTS

static final String PROP_SUFFIX_DOMAIN_ENDPOINTS
Use this string as a suffix when reading and writing domain end points properties. Domain end points are specified in the following format:
 <domainName>.endPoints=<host>:<port>,<host>:<port>
 

Example:

 domainName=NewYork
 foreignDomains=London,Tokyo
 London.endPoints=datagridcat1.london.acme.com:2809,datagridcat2.london.acme.com:2809
 Tokyo.endPoints=datagridcat1.tokyo.acme.com:2809,datagridcat2.tokyo.acme.com:2809
 

Since:
7.1
See Also:
Constant Field Values

PROP_JMX_SERVICE_PORT

static final String PROP_JMX_SERVICE_PORT
Deprecated. Deprecated in version 7.1. Use ServerProperties.PROP_JMX_SERVICE_PORT instead
Sets the port that the MBean Server should listen on.

Since:
WAS XD 6.1.0.3
See Also:
ServerProperties.PROP_JMX_SERVICE_PORT, Constant Field Values

PROP_CATALOG_CLUSTER_END_POINTS

static final String PROP_CATALOG_CLUSTER_END_POINTS
The format of the string should be "serverName:hostName:clientPort:peerPort<,serverName:hostName:clientPort:peerPort>".

Since:
WAS XD 6.1.0.3
See Also:
Constant Field Values

PROP_HEARTBEAT_FREQUENCY_LEVEL

static final String PROP_HEARTBEAT_FREQUENCY_LEVEL
Sets the heartbeat frequency level.

Since:
WAS XD 6.1.0.3
See Also:
setHeartBeatFrequencyLevel(int), Constant Field Values

PROP_CATALOG_SERVER

static final String PROP_CATALOG_SERVER
A boolean to indicate whether the server should start a catalog service.

Since:
7.1.1
See Also:
setCatalogServer(boolean), Constant Field Values

HEARTBEAT_FREQUENCY_LEVEL_TYPICAL

static final int HEARTBEAT_FREQUENCY_LEVEL_TYPICAL
Constant representing a heartbeat level at a typical rate.

A typical heartbeat frequency allows reasonable failover detection and resource utilization. This value is the default.

See Also:
Constant Field Values

HEARTBEAT_FREQUENCY_LEVEL_AGGRESSIVE

static final int HEARTBEAT_FREQUENCY_LEVEL_AGGRESSIVE
Constant representing a heartbeat level at an aggressive rate.

An increased heartbeat frequency allows failures to be detected more quickly, but can also uses additional CPU and network resources. This level is more sensitive to missing heartbeats when the server is stressed.

See Also:
Constant Field Values

HEARTBEAT_FREQUENCY_LEVEL_RELAXED

static final int HEARTBEAT_FREQUENCY_LEVEL_RELAXED
Constant representing a heartbeat level at relaxed rate.

A decreased heartbeat frequency increases the time to detect failures, but also decreases CPU and network utilization.

See Also:
Constant Field Values

PLACEMENT_DEFERRAL_INTERVAL_DEFAULT

static final long PLACEMENT_DEFERRAL_INTERVAL_DEFAULT
Constant representing the default interval for deferral of balancing and placement of work items to the containers

An increase in the deferral interval will lower CPU utilization, but the placement of work items will be completed over time. A decrease in the deferral interval will increase short term CPU utilization, but the placement of work items will be more immediate and expedited. The value is in milliseconds.

Since:
7.1.1
See Also:
setPlacementDeferralInterval(long), PROP_PLACEMENT_DEFERRAL_INTERVAL, Constant Field Values

PROP_PLACEMENT_DEFERRAL_INTERVAL

static final String PROP_PLACEMENT_DEFERRAL_INTERVAL
Determines the placement deferral interval.

Since:
7.1.1
See Also:
setPlacementDeferralInterval(long), Constant Field Values

PROP_TRANSPORT

static final String PROP_TRANSPORT
Determines the transport on the catalog service domain for server to server communication

Since:
8.6.0
See Also:
XIO_TRANSPORT, ORB_TRANSPORT, Constant Field Values

ORB_TRANSPORT

static final String ORB_TRANSPORT
The Object Request Broker or ORB transport

See Also:
PROP_TRANSPORT, setTransport(String), getTransport()

XIO_TRANSPORT

static final String XIO_TRANSPORT
The eXtremeIO or XIO transport

See Also:
PROP_TRANSPORT, setTransport(String), getTransport()
Method Detail

setCatalogServer

void setCatalogServer(boolean isCatalog)
Defines this process as a catalog service if isCatalog is true. The default value is false.

Parameters:
isCatalog - Defines this process as a catalog service if true.

isCatalogServer

boolean isCatalogServer()
Returns whether this process is defined as a catalog service or not.

Returns:
Whether or no this process is defined as a catalog service.

setDomainName

void setDomainName(String domainName)
Assigns the name of the ObjectGrid domain that this catalog service manages. The domain is defined by the set of containers that this catalog service manages. Note that this name only needs to be unique when an ObjectGrid client may access maps in multiple domains.

Parameters:
domainName - A unique name for this catalog service.
See Also:
DEFAULT_DOMAIN

getDomainName

String getDomainName()
Retrieves the name of the domain that this catalog service defines.

Returns:
A unique name for this catalog service.

setCatalogClusterEndpoints

void setCatalogClusterEndpoints(String clusterEndpoints)
Sets the endpoint for each of the catalog service grid members. Each catalog service must be set with the same list of endpoints, this is because the catalog service members will be set into a core group for availability monitoring and must be aware of each other. The format of the string should be "serverName:hostName:clientPort:peerPort<,serverName:hostName:clientPort:peerPort>".

Parameters:
clusterEndpoints - The endpoints string containing all of the catalog services.

getCatalogClusterEndpoints

String getCatalogClusterEndpoints()
Retrieves the list of catalog service endpoints.

Returns:
A string concatenation of endpoints for all of the catalog service members.

setHeartBeatFrequencyLevel

void setHeartBeatFrequencyLevel(int frequencyLevel)
Sets the heartbeat frequency level. The heartbeat frequency level tells the catalog service how aggressively to check for container failures. The default is 0, which is suitable for most environments.

Valid values include:

Parameters:
frequencyLevel - one of three values: -1, 0 or 1 as defined by the constants that begin with name HEARTBEAT_FREQUENCY_LEVEL.
Throws:
IllegalArgumentException - if the frequencyLevel is out of range.
Since:
WAS XD 6.1.0.3

getHeartBeatFrequencyLevel

int getHeartBeatFrequencyLevel()
Retrieves the heartbeat frequency level.

Valid values include:

Returns:
the heartbeat frequency level: -1, 0 or 1 as defined by the constants that begin with name HEARTBEAT_FREQUENCY_LEVEL.
Since:
WAS XD 6.1.0.3

setClusterSecurityURL

void setClusterSecurityURL(URL clusterSecurity)
Sets the location of the security file specific to the catalog service.

Parameters:
clusterSecurity - The cluster security file location.

getClusterSecurityURL

URL getClusterSecurityURL()
Retrieves the cluster security file location.

Returns:
The cluster security file location.

setServerSecurityFileName

void setServerSecurityFileName(String serverSecurity)
Sets the server security file name.

Parameters:
serverSecurity - Retrieves the server security file name.

getServerSecurityFileName

String getServerSecurityFileName()
Retrieves the server security file name.

Returns:
The server security file name.

setQuorum

void setQuorum(boolean quorum)
Defines the behavior of this catalog service to enable quorum. Quorum is used to ensure that a majority of the catalog service grid is available before allowing modification to the placement of partitions on available container servers. This is done to protect against inconsistencies that may arise from an "islanded" catalog service.

By default, the quorum is disabled.

Parameters:
quorum - Whether this catalog service should enforce quorum or not.

getQuorum

boolean getQuorum()
Returns whether or not this catalog service is enforcing quorum.

Returns:
Answers true if quorum is enabled on the catalog server.

setManagementConcentrator

void setManagementConcentrator(boolean enabled)
Defines the behavior of this catalog service to enable the MBean notifications concentrator. The Management Concentrator is used to consolidate all MBean notifications emitted in the catalog or container servers. This is done to ensure single point of subscription for JMX clients and access to canonical formatted notification events from all emitters.

By default, the Management Concentrator is enabled.

Parameters:
enabled - Whether this catalog service initialises the notification concentrator or not.
Since:
8.6

isManagementConcentrator

boolean isManagementConcentrator()
Returns whether or not this catalog service is initialising the MBean notifications concentrator.

Returns:
Answers true if the notifications concentrator is enabled on the catalog server.
Since:
8.6

setForeignDomains

void setForeignDomains(String foreignDomains)
Set the foreign domains that this domain will communicate with to establish a multi-primary topology.

Provide domain names in a comma separated list.

Parameters:
foreignDomains - A comma separated list of foreign domain names.
Since:
7.1

getForeignDomains

String getForeignDomains()
Get the current foreign domains.

Returns:
A String of comma separated domain names
Since:
7.1

setDomainEndPoints

void setDomainEndPoints(String domain,
                        String endPoints)
Set end points for catalog servers in a foreign domain. The end points correspond to the listener host and listener port of the catalog servers.

Domain end points are specified in the following format:

 <domainName>.endPoints=<host>:<port>,<host>:<port>
 

Parameters:
domain - The domain name to set the end points for.
endPoints - A comma separated list of host:port values.
Since:
7.1

getDomainEndPoints

String getDomainEndPoints(String domain)
Retrieves the end points for the specified domain

Parameters:
domain - The domain name in which to retrieve the end points.
Since:
7.1

load

void load(InputStream input)
          throws IOException
Loads the properties from input into this property object.

Parameters:
input - A stream to load properties from.
Throws:
IOException - If the properties input has an invalid format.

store

void store(OutputStream output)
           throws IOException
Writes the properties from this object into output.

Parameters:
output - A stream to write out the properties to.
Throws:
IOException - If the properties input has an invalid format.

setPlacementDeferralInterval

void setPlacementDeferralInterval(long placementDeferralInterval)
Sets the placement deferral interval. The placement deferral interval tells the catalog service how aggressively to do placement of work items. The default is 15000 milliseconds, which is suitable for most environments.

Parameters:
placementDeferralInterval - is the interval in milliseconds for the deferral of balancing and placement of work items to the containers. If the interval is -1 the default interval will be used.
Since:
7.1.1

getPlacementDeferralInterval

long getPlacementDeferralInterval()
Gets the placement deferral interval. The placement deferral interval tells the catalog service how aggressively to do placement of work items. The default is 15000, which is suitable for most environments.

Returns:
the placement deferral interval in milliseconds
Since:
7.1.1

setTransport

void setTransport(String transport)
Sets the transport for the catalog service domain

Since:
8.6.0
See Also:
XIO_TRANSPORT, ORB_TRANSPORT

getTransport

String getTransport()
Returns the transport for the catalog service domain

Since:
8.6.0
See Also:
XIO_TRANSPORT, ORB_TRANSPORT

IBM WebSphereTM eXtreme Scale, Release 8.6
API Specification

© Copyright International Business Machines Corp 2005,2012. All rights reserved.