Interface IDSSXMLClusterNode


  • public interface IDSSXMLClusterNode
    This interface contains a set of properties of a cluster node (an Intelligence Server). This interface can be returned by IDSSXMLAdmin.GetClusterNode or IDSSXMLCluster.getItem. Refer to IDSSXMLAdmin for details about the IDSSXMLAdmin interface and sample code.
    Since:
    MicroStrategy Web 7.3.1 or earlier
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.List<IDSSXMLProjectInfo> getAllProjects()
      Return all projects information in the cluster node(load&unloaded)
      int getBusyConnections()
      Returns the number of busy connections in the connection pool.
      java.lang.String getCanonicalName()
      Gets the canonical name which the I-Server node uses to identify itself.
      int getConnectionPoolSize()
      Returns the number of connections in the connection pool.
      int getFreeConnections()
      Returns the number of free connections in the connection pool.
      int getInitialConnectionPoolSize()
      Returns the initial connection pool size.
      boolean getKeepAlive()
      Returns the current keepalive option status.
      int getLoad()
      Returns the current load on the Intelligence Server
      int getLoadBalanceFactor()
      This method gives the current load balance factor of the current cluster node.
      java.lang.String getNodeAddress()  
      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 Server
      com.microstrategy.webapi.MsiProjectStruct[] getProjects()  
      java.lang.String getServerReportedNodeName()
      Returns the hostname reported by i-server (ex .
      int 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 putConnectionPoolSize​(int newSize)
      Changes the maximum number of connections in the connection pool.
      void putLoadBalanceFactor​(int loadBalanceFactor)
      This method can be used when a web server administrator wants load to be distributed between clustered Intelligence Servers unevenly.
      void setKeepAlive​(boolean option)
      Enable/disable keepalive signal for socket connections between i-server cluster and web server
    • 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.
      • getCanonicalName

        java.lang.String getCanonicalName()
        Gets the canonical name which the I-Server node uses to identify itself. Guaranteed to not be an ip address. The canonical name may be null; this happens when the IServer is part of the cluster but it is down and has never been up. THIS METHOD IS NOT SUPPORTED FOR USE IN CUSTOM APPLICATION DEVELOPMENT. THE METHOD IS SUBJECT TO CHANGE IN FUTURE RELEASES AND SOME METHODS AND PROPERTIES MAY NOT BE SUITABLE FOR CUSTOM DEVELOPMENT.
        Returns:
        The canonical name
        Since:
        MicroStrategy Web 11.2 GA
      • getServerReportedNodeName

        java.lang.String getServerReportedNodeName()
        Returns the hostname reported by i-server (ex . I-Server returned hostname in a cluster membership information)
        Returns:
        The alias of the node reported by i-server.
      • 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.
      • putConnectionPoolSize

        void putConnectionPoolSize​(int newSize)
                            throws MSTRWebAPIException
        Changes the maximum number of connections in the connection pool.
        Parameters:
        newSize - The new size of the connection pool.
        Throws:
        MSTRWebAPIException - Signals an error condition.
      • putLoadBalanceFactor

        void putLoadBalanceFactor​(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()
        Returns the current keepalive option status.
        Returns:
        A boolean value, which will be true if the keepalive signal is enabled.
      • getInitialConnectionPoolSize

        int getInitialConnectionPoolSize()
        Returns the initial connection pool size.
      • getNodeAddress

        java.lang.String getNodeAddress()
      • getProjects

        com.microstrategy.webapi.MsiProjectStruct[] getProjects()
      • getAllProjects

        java.util.List<IDSSXMLProjectInfo> getAllProjects()
        Return all projects information in the cluster node(load&unloaded)