public interface

WebClusterNode

com.microstrategy.web.objects.WebClusterNode

Class Overview

This interface contains a set of properties of a cluster node (an Intelligence Server).

Summary

Public Methods
abstract int getBusyConnections()
Returns the number of busy connections in the connection pool.
abstract int getConnectionPoolSize()
Returns the number of connections in the connection pool.
abstract int getFreeConnections()
Returns the number of free connections in the connection pool.
abstract boolean getKeepAlive()
get current keepalive option status
abstract int getLoad()
Returns the current load on the Intelligence Server
abstract int getLoadBalanceFactor()
This method gives the current load balance factor of the current cluster node.
abstract String getNodeName()
Returns the name of the Intelligence Server.
abstract int getOpenConnections()
Returns the number of connections that the connection pool has open to the Intelligence server at the current time.
abstract int getPort()
Returns the remote port of the Intelligence Server
abstract int getTimeoutsAbsolute()
Returns the number of times a thread has timed out while waiting for a connection from the connection pool.
abstract int getWaitingThreads()
Returns the current number of threads that are waiting for a connection from the connection pool.
abstract void setConnectionPoolSize(int newSize)
Changes the maximum number of connections in the connection pool.
abstract void setKeepAlive(boolean option)
Enable/disable keepalive signal for socket connections between i-server cluster and web server
abstract void setLoadBalanceFactor(int loadBalanceFactor)
This method can be used when a web server administrator wants load to be distributed between clustered Intelligence Servers unevenly.

Public Methods

public abstract int getBusyConnections ()

Returns the number of busy connections in the connection pool.

Returns
  • Number of busy connections.

public abstract int getConnectionPoolSize ()

Returns the number of connections in the connection pool.

Returns
  • Total number of connections.

public abstract int getFreeConnections ()

Returns the number of free connections in the connection pool.

Returns
  • Number of free connections.

public abstract boolean getKeepAlive ()

get current keepalive option status

Returns
  • a boolean value true indicating the keepalive signal is enabled, otherwise disabled.

public abstract int getLoad ()

Returns the current load on the Intelligence Server

Returns
  • Current load on the Server.

public abstract 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.

public abstract String getNodeName ()

Returns the name of the Intelligence Server.

Returns
  • The name of the node.

public abstract 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.

public abstract int getPort ()

Returns the remote port of the Intelligence Server

Returns
  • The port number of the Server.

public abstract 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.

public abstract 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.

public abstract void setConnectionPoolSize (int newSize)

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.

public abstract 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.

public abstract 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.