Runtime behavior

Regular operation

During regular operation, the calculated percentage defines how new sessions are distributed over the available back-end hosts. Every time a new session sends its first request, it is assigned to a back-end host using a weighted random function, where the back-end host's percentages are used as weights. Due to this, the desired distribution will only be achieved over time, with a statistically significant amount of traffic.

No new sessions

Whenever a back-end host's mode is set to "No new Sessions", its percentage value in the load balancing table will be changed to "0%", regardless of its given weight. The percentage for all the remaining back-end hosts will be re-calculated to take into account this lost resource. Back-end hosts with percentage "0%" will not be assigned any new sessions, but requests for existing sessions will continue to be sent to them.

Disabled

Whenever a back-end host's mode is set to "Disabled", its percentage value in the load balancing table will be changed to "-", regardless of its given weight. The corresponding back-end host will be removed from the pool of available back-end hosts and no longer receives any request, be it from existing or new sessions.

Bad

Health Checks can alter a back-end host's state at runtime. A back-end host that is set to "Bad" by a Health Check acts identical to a back-end host that is manually set to "Disabled" - see above. Requests from sessions assigned to this back-end host will be assigned to the remaining back-end hosts, following the standard distribution procedure. This change is reported in the logs, but is not visible in the Airlock Gateway configuration center.

Spare

If back-end host B1 is set to "Bad" by a Health Check, and back-end host B2 is marked as "spare", then B2 will be assigned B1's weight, and from then on will be assigned new sessions. If B1 is later set to "Good" again (after successful Health Checks), this is reverted: B1 is re-assigned its original weight, it receives new sessions, whereas B2 will be assigned a weight of "0%" and only receive requests from existing sessions, as long as there are any. This process is logged, but not visualized in the Airlock Gateway configuration center.