Decentralized Load Balancing via Shared Cache Agents

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing host clusters face challenges in balancing loads without a centralized controller or load balancer, leading to inefficiencies and single points of failure, especially when service agents have varying availability and task completion times.

Innovation Solution

A decentralized load balancing system where service agents on host instances use a shared cache to dynamically adjust their states and workload distribution based on timers, timestamps, and load differences between host instances, allowing them to automatically balance tasks without a centralized controller.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a centralized controller or load balancer is used to balance loads, then workload distribution can be managed, but single points of failure are created and system reliability decreases

Engineering Contradiction:
Improveworkload distributionVSAvoidsystem availability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent extracts the centralized controller from the system architecture and replaces it with decentralized service agents on each host instance. Each agent independently manages load balancing decisions using local state information and shared cache data, eliminating the single point of failure while maintaining workload distribution capabilities

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system segments the centralized load balancing function into distributed service agents on individual host instances. Each agent operates autonomously with its own state machine and decision-making logic, dividing the monolithic control function into modular, fault-isolated units that can operate independently

Inventive Principle:
Principle #1Segmentation

2Productivity

If service agents continuously monitor and adjust workload distribution, then load balancing efficiency improves, but system complexity and resource consumption increase

Engineering Contradiction:
Improveload balancing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Service agents use timers to transition between sleep and active states periodically, rather than continuously monitoring. During sleep state, agents consume minimal resources; during active state, they perform load balancing decisions based on current system conditions, achieving efficient periodic control without continuous overhead

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

Each service agent autonomously manages its own state transitions, workload acceptance, and timestamp updates without requiring complex external coordination. The agents self-regulate their activity based on local state information and shared cache data, reducing overall system complexity through decentralized autonomy

Inventive Principle:
Principle #25Self-service

3Speed

If service agents remain in active state to handle tasks, then task completion speed improves, but resource consumption and system load increase

Engineering Contradiction:
Improvetask completion speedVSAvoidresource consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

Service agents alternate between sleep and active states using timers. When active, they can immediately handle tasks without delay; when in sleep state, they conserve resources. This periodic activation pattern ensures rapid task response when needed while minimizing resource consumption during idle periods

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The service agents dynamically transition between operational states based on system conditions and timer expiration. The system adapts agent availability in real-time, activating agents when workload requires rapid response and placing them in sleep state when resources need conservation, optimizing the trade-off between speed and energy use

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10157085B2Techniques for decentralized load balancing
Publication Date: 2018.12.18 SAS INSTITUTE INC
  • US10157085B2 patent drawing
  • US10157085B2 patent drawing
  • US10157085B2 patent drawing

AI summary

Various embodiments are generally directed to decentralized load balancing in a host cluster utilized to coordinate performance of processing tasks in a workload, such as via service agents and/or host instances included in the host cluster, for instance. Some embodiments are particularly directed to a set of service agents on one or more host instances that utilize a shared cache to coordinate among themselves to automatically balance a workload without a centralized controller or a centralized load balancer. In one or more embodiments, a set of service agents may automatically and cooperatively balance a workload among themselves using the shared cache.