Skip to main content
Version: v8

Load Balancing


Overview

Load balancing across multiple application instances is a commonly used technique for optimizing resource utilization, maximizing throughput, reducing latency, and ensuring fault-tolerance configurations.

Load Balancing Algorithms

This field specifies the load balancing algorithm according to the configured website.

  1. ROUND ROBIN: This algorithm is a smart approach to distribute client requests across an array of servers. It forwards the client request to each server in turn. Also, assigns a weight to each server as per current load and idle capacity.

  2. LEAST CONNECTIONS: This algorithm is a dynamic load balancing algorithm. It forwards client requests to the server, which has the least no. of active connections on the server.

  3. LEAST RESPONSE TIME: This algorithm is a dynamic load balancing algorithm. It forwards client requests to the server, which have used least bandwidth for serving the client requests.

  4. LEAST BANDWIDTH:This algorithm is a dynamic load balancing algorithm. It forwards client requests to the server, which have a small response time in order to serve requests.

  5. IP HASH: This algorithm takes the client's and server's source and destination IP address to generate a unique hash key. This key is used to assign the client to a specific server. In the case of a broken session, the key can be regenerated, and the client can be directed to the same server.

  6. PERSISTENT HASH: This algorithm takes the user input location within the current request to generate a user-defined custom unique hash key. This key is used to assign the client to a specific server. In the case of a broken session, the key can be regenerated, and the client can be directed to the same server. NOTE: In hashing-based load balancing, if a specified value does not exist then the request is served on the basis of client's IP address.

  7. Least Requests: This algorithm is a dynamic load balancing algorithm. It forwards client requests to the server, which have served the minimum amount of requests.

  8. SNMP Metrics: This algorithm is a dynamic load balancing algorithm. It forwards client requests to the server, which have the least CPU / RAM usage. NOTE: For this algorithm to work, the server group should have SNMP monitor attached.

How to Use:

  1. Go to Stack > SLB > Listeners >** Server Groups** > Select Server Name > Load Balancing
  2. Configure your settings.
  3. Click Save Changes.

Load balancing

Load balancing

Description:

Connection Reuse Policy

This option allows users to specify an HTTP connection reuse policy.

    Accepted values: Always / Never / Safe / Aggressive

Default: Always
Enable HTTP KeepAlive

This option allows users to specify enabling server connection keep-alive.

    Accepted values: Enable / Disable

Default: Enable
HTTP KeepAlive Timeout

This option allows users to specify a keep-alive server connection timeout.

    Accepted values: Integer

Default: 2
Tunnel Timeout

This option allows users to set the maximum inactivity time on the client and server-side for Websocket tunnels

    Accepted values: Integer

Default: 120
Request Timeout

This option allows users to set the maximum inactivity time on the client and server-side for web-socket tunnels.

    Accepted values: Integer

Default: 10
Server Connect Timeout

This option allows users to specify a max time to wait for establishing server connection.

    Accepted values: Integer

Default: 4
Idle Connection Timeout

This option allows users to specify idle server connection timeout.

    Accepted values: Integer

Default: 30
Resume Connection Timeout

This option allows users to specify the time within which a lost server connection can resume.

    Accepted values: Integer

Default: 1
Queue Timeout

This option allows users to specify the maximum time to wait in the queue for a connection slot to be free.

    Accepted values: Integer

Default: 5
Connection Pool Size

This option allows users to specify the maximum number of idling connections for a server. Set -1 for unlimited.

    Accepted values: Integer

Default: 32
Server Retries

This option allows users to specify the max number of connection retries.

    Accepted values: Integer

Default: 1
Client IP Pool

This option allows users to specify list of client IP to use when connecting to upstream. Leave blank for auto.

    Accepted values: IP

Default: Blank
Algorithm

This option allows users to specify the Server Group Algorithm.

    Accepted values: Round Robin / Least Connection / Least Listener Connection / Least Response Time / Minium Jitter / IP Hash / Persistent Hash / Least Requests / SNMP Metrics 

Default: Round Robin

Users are allowed to specify enabling sticky session based on specified cookie.

    Accepted values: String

Default: 5
Adding Location

Load balancing2

  • Priority The user can set the priority.
    Accepted values: Integer

Default: Blank
  • Location
    The user can set the location for which load balancing is done.
    Accepted values: SRC_IP / DST_IP / SRC_PORT / DST_PORT / URL / ARG_VAL / HEADER_VAL / COOKIE_VAL

Default: SRC_IP
  • Value
    The users are allowed to specify the location value. This option will only visible when location is selected to value fields.
    Accepted values: String

Default: 5