Interface WebClusterNode
-
public interface WebClusterNode
This interface contains a set of properties of a cluster node (an Intelligence Server).- Since:
- MicroStrategy Web 7.3.1 or earlier
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
getBusyConnections()
Returns the number of busy connections in the connection pool.int
getConnectionPoolSize()
Returns the number of connections in the connection pool.int
getFreeConnections()
Returns the number of free connections in the connection pool.boolean
getKeepAlive()
get current keepalive option statusint
getLoad()
Returns the current load on the Intelligence Serverint
getLoadBalanceFactor()
This method gives the current load balance factor of the current cluster node.java.lang.String
getNodeName()
Returns the name of the Intelligence Server.int
getOpenConnections()
Returns the number of connections that the connection pool has open to the Intelligence server at the current time.int
getPort()
Returns the remote port of the Intelligence Serverint
getTimeoutsAbsolute()
Returns the number of times a thread has timed out while waiting for a connection from the connection pool.int
getWaitingThreads()
Returns the current number of threads that are waiting for a connection from the connection pool.void
setConnectionPoolSize(int newSize)
Changes the maximum number of connections in the connection pool.void
setKeepAlive(boolean option)
Enable/disable keepalive signal for socket connections between i-server cluster and web servervoid
setLoadBalanceFactor(int loadBalanceFactor)
This method can be used when a web server administrator wants load to be distributed between clustered Intelligence Servers unevenly.
-
-
-
Method Detail
-
getBusyConnections
int getBusyConnections()
Returns the number of busy connections in the connection pool.- Returns:
- Number of busy connections.
-
getConnectionPoolSize
int getConnectionPoolSize()
Returns the number of connections in the connection pool.- Returns:
- Total number of connections.
-
getFreeConnections
int getFreeConnections()
Returns the number of free connections in the connection pool.- Returns:
- Number of free connections.
-
getLoad
int getLoad()
Returns the current load on the Intelligence Server- Returns:
- Current load on the Server.
-
getLoadBalanceFactor
int getLoadBalanceFactor()
This method gives the current load balance factor of the current cluster node.- Returns:
- The current load balance factor of the cluster node.
-
getNodeName
java.lang.String getNodeName()
Returns the name of the Intelligence Server.- Returns:
- The name of the node.
-
getOpenConnections
int getOpenConnections()
Returns the number of connections that the connection pool has open to the Intelligence server at the current time. Note that because of dynamic growth/shrinkage of the connection pool, this number is not necessarily equal to the maximum number of connections in the pool.- Returns:
- The current number of connections that the API connection pool is maintaining to this server.
-
getPort
int getPort()
Returns the remote port of the Intelligence Server- Returns:
- The port number of the Server.
-
getTimeoutsAbsolute
int getTimeoutsAbsolute()
Returns the number of times a thread has timed out while waiting for a connection from the connection pool. This number is an absolute number of timeouts, counted from when this instance of the API was created. The data returned from this function is used best by observing the change in this number over a specific period of time.- Returns:
- The number of timeouts that have occurred when a thread was waiting for a connection from the connection pool to become free.
-
getWaitingThreads
int getWaitingThreads()
Returns the current number of threads that are waiting for a connection from the connection pool.- Returns:
- The current number of threads that are waiting on a connection from the pool.
-
setConnectionPoolSize
void setConnectionPoolSize(int newSize) throws WebObjectsException
Changes the maximum number of connections in the connection pool.- Parameters:
newSize
- The new size of the connection pool.- Throws:
WebObjectsException
- Signals an error condition while setting the connection pool size.
-
setLoadBalanceFactor
void setLoadBalanceFactor(int loadBalanceFactor)
This method can be used when a web server administrator wants load to be distributed between clustered Intelligence Servers unevenly.The default value is 1. By default, loads are balanced evenly across the cluster nodes in a cluster.
There are many reasons we may wish to use uneven load balancing. A few examples include if the hardware configuration of the cluster nodes are not equal to each other, or if some cluster nodes are in the same subnet as the web server while others are not. In these cases, we may want more load to be distributed to the nodes that are more powerful or in the same subnet as the web server. To achieve uneven load balancing, override the default value of the LoadBalanceFactor property for each cluster node.
For example, suppose we have a two-server cluster and we want to have a 30% to 70% load distribution ratio. We can set the load balance factor of the two cluster nodes to 30 and 70 (or 3 and 7), respectively, to achieve this.
- Parameters:
loadBalanceFactor
- The load factor to give this Server in relation to other servers in its cluster.
-
setKeepAlive
void setKeepAlive(boolean option)
Enable/disable keepalive signal for socket connections between i-server cluster and web server- Parameters:
option
- if set to be true then the keepalive signal is enabled, otherwise disabled.
-
getKeepAlive
boolean getKeepAlive()
get current keepalive option status- Returns:
- a boolean value true indicating the keepalive signal is enabled, otherwise disabled.
-
-