Load-Balancing Methods

Sticky sessions or other methods of load balancing where Redis is not deployed are not supported.

These examples describe commonly supported load-distribution methods available to most load balancers.

  • Round Robin

    (Most Common) The system passes each new connection request to the next server in line, eventually distributing connections evenly across the array of machines being load balanced. This method works well in most configurations, especially if the equipment that is being load balancing is roughly equal in processing speed and memory.

  • Least Connections:
    • Node:(Most Common) The system passes a new connection to the node that has the least number of current connections out of all pools of which a node is a member. This method works best in environments where the servers or other equipment you are load balancing have similar capabilities. This is a dynamic load balancing method, distributing connections based on various aspects of real-time server performance analysis, such as the number of current connections per node, or the fastest node response time.
    • Member: The system passes a new connection to the node that has the least number of current connections in the pool. This method works best in environments where the servers or other equipment you are load balancing have similar capabilities. This is a dynamic load-balancing method, distributing connections based on various aspects of real-time server performance analysis, such as the current number of connections per node or the fastest node response time.
  • Dynamic Ratio (member)

    This method is similar to Ratio (node) mode, except that weights are based on continuous monitoring of the servers and are continually changing. This is a dynamic load-balancing method, distributing connections based on various aspects of real-time server performance analysis, such as the number of current connections per node or the fastest node response time.

  • Ratio Least Connections
    • Node: The system selects the node according to the ratio of the number of connections each node has active.
    • Member: The system selects the pool member according to the ratio of the number of connections each pool member has active.
  • Ratio (member)

    The number of connections that each machine receives over time is proportionate to a ratio weight defined for each machine within the pool.

  • Weighted Least Connections
    • Node: The system uses the value specified in the node's connection limit and the number of current connections to a node to establish a proportional algorithm. This algorithm requires all nodes used by pool members to have a non-zero connection limit specified.
    • Member: The system uses the value specified in connection limit to establish a proportional algorithm for each pool member. The system bases the load-balancing decision on that proportion and the number of current connections to that pool member. For example, member_a has 20 connections and its connection limit is 100, so it is at 20 percent of capacity. Similarly, member_b has 20 connections and its connection limit is 200, so it is at 10 percent of capacity. In this case, the system selects member_b. This algorithm requires all pool members to have a non-zero connection limit specified.
  • Least Sessions

    The system passes a new connection to the node that currently has the least number of persistent sessions. This method works best in environments where the servers or other load-balanced equipment have similar capabilities. This is a dynamic load-balancing method, distributing connections based on various aspects of real-time server performance analysis, such as the number of current sessions. Use of this load-balancing method requires that the virtual server reference a type of persistence profile that tracks persistence connections.

  • Observed
    • Node: The system ranks nodes based on the number of connections. Nodes that have a better balance of fewest connections receive a greater proportion of the connections. This method differs from Least Connections (node), in that the Least Connections method measures connections only at the moment of load balancing, while the Observed method tracks the number of layer-four connections to each node over time and creates a ratio for load balancing. This dynamic load-balancing method works well in any environment, but can be particularly useful in environments where node performance varies significantly.
    • Member: The system ranks nodes based on the number of connections. Nodes that have a better balance of fewest connections receive a greater proportion of connections. This method differs from Least Connections (member) in that the Least Connections method measures connections only at the moment of load balancing, while the Observed method tracks the number of layer-four connections to each node over time and creates a ratio for load balancing. This dynamic load-balancing method works well in any environment but can be particularly useful in environments where node performance varies significantly.
  • Predictive
    • Node: The system uses the ranking method used by the Observed (member) methods, except that the system analyzes the trend of the ranking over time, determining whether a node's performance is improving or declining. The nodes in the pool with better performance rankings that are currently improving, rather than declining, receive a higher proportion of the connections. This dynamic load-balancing method works well in any environment.
    • Member: Uses the ranking method used by the Observed (member) methods, except that the system analyzes the trend of the ranking over time, determining whether a node's performance is improving or declining. The nodes in the pool with better performance rankings that are currently improving, rather than declining, receive a higher proportion of the connections. This dynamic load-balancing method works well in any environment.