Home > Design Patterns > Service Load Balancing
Service Load Balancing

Service Load Balancing (Erl, Naserpour)

How can a cloud service accommodate increasing workloads?

Problem

A single cloud service implementation has a finite capacity, which leads to runtime exceptions, failure and performance degradation when its processing thresholds are exceeded.

Solution

Redundant deployments of the cloud service are created and a load balancing system is added to dynamically distribute workloads across cloud service implementations.

Application

The duplicate cloud service implementations are organized into a resource pool. The load balancer is positioned as an external component or may be built-in, allowing hosting servers to balance workloads among themselves.
Service Load Balancing: The load balancing agent intercepts messages sent by cloud service consumers (1) and forwards the messages at runtime to the virtual servers so that the workload processing is horizontally scaled (2).

The load balancing agent intercepts messages sent by cloud service consumers (1) and forwards the messages at runtime to the virtual servers so that the workload processing is horizontally scaled (2).

NIST Reference Architecture Mapping

This pattern relates to the highlighted parts of the NIST reference architecture, as follows:

Service Load Balancing: NIST Reference Architecture Mapping