Interface ServerLoadProbe

  • All Superinterfaces:
    CacheCallback, Declarable
    All Known Implementing Classes:
    ServerLoadProbeAdapter

    public interface ServerLoadProbe
    extends CacheCallback
    A load probe is installed in a cache server to measure the load on the cache server for balancing load between multiple cache servers.

    The getLoad method will be called once per poll interval see CacheServer.setLoadPollInterval(long) The ServerLoad object returned by the getLoad method will be sent to the locator every time the load for this server changes. To conserve bandwidth, it's a good idea to round the load calculations so that the load will not be sent too frequently.

    The ServerLoad object contains two floating point numbers indicating the load on the server due to client to server connections and due to subscription connections. When routing a connection, the locator will choose the server that has the lowest load.

    It is generally a good idea to pick a load function where 0 connections corresponds to 0 load. The default gemfire load probes return a fraction between 0 and 1, where 0 indicates no load, and 1 indicates the server is completely loaded.

    Because cache servers can be stopped, reconfigured, and restarted, the open and close methods on this callback can be called several times. If the same callback object is installed on multiple cache servers, open and close will be called once for each cache server.

    Since:
    GemFire 5.7