Service Mesh Control Plane for Reactive System Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Reactive systems pose challenges in managing workload due to fluctuating demand, as traditional load-balancing algorithms are no longer diagnostic for system loading, making it unclear how much consumer provisioning is needed, especially in cloud environments with microservice-based applications.

Innovation Solution

A computer system with a service mesh comprising a data plane and a control plane that manages consumer service instances by defining event capacity, measuring current event capacities, and dynamically adding or removing instances based on shortfall or over-provisioning, using windowing and batching information to optimize burst and throughput capacities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional load-balancing algorithms are used in reactive systems, then system management becomes simpler, but the algorithms are no longer diagnostic for system loading and cannot determine how much consumer provisioning is needed

Engineering Contradiction:
Improvesystem managementVSAvoidsystem loading diagnosis
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent implements a feedback mechanism where the control plane continuously monitors system state (event capacity, consumer provisioning levels) and uses this information to dynamically adjust load balancing decisions. This feedback loop restores diagnostic capability to load balancing in reactive systems by making system state information available to the load balancing algorithm.

Inventive Principle:
Principle #23Feedback

2Reliability

If consumer provisioning is increased to handle fluctuating demand, then system capacity is improved, but resource waste occurs during low-demand periods

Engineering Contradiction:
Improvesystem capacityVSAvoidresource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies dynamics by making consumer provisioning adjustable rather than fixed. The control plane dynamically scales consumer instances up or down based on real-time system state and demand conditions, allowing the system to maintain reliability during high-demand periods while reducing resource consumption during low-demand periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements self-service through automated provisioning management. The control plane autonomously monitors system state and adjusts consumer provisioning levels without manual intervention, enabling the system to self-optimize between capacity and resource efficiency based on actual demand conditions.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If dynamic scaling of consumer instances is implemented, then system adaptability to fluctuating demand is improved, but system complexity increases

Engineering Contradiction:
Improvesystem adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a control plane as an intermediary between the reactive system components and the provisioning infrastructure. This intermediary abstracts the complexity of dynamic scaling, handling monitoring, decision-making, and execution of provisioning changes, thereby enabling adaptability while managing system complexity through layering.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If reactive load balancing is used where consumers control batching, then producer overload is prevented, but transparency of consumer provisioning needs is lost

Engineering Contradiction:
Improveproducer overload preventionVSAvoidprovisioning transparency
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The control plane implements feedback by monitoring consumer behavior patterns (batching frequencies, window sizes) and using this information to infer provisioning needs. This restores transparency to the system by making provisioning decisions based on observable consumer behavior while maintaining the reactive load balancing approach.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11621919B2Dynamic load balancing in reactive systems
Publication Date: 2023.04.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11621919B2 patent drawing
  • US11621919B2 patent drawing
  • US11621919B2 patent drawing

AI summary

A computer system hosting (micro)services that uses a service mesh to govern communication between the services. The services include consumer services and an event stream service, the latter directing an event stream from a producer service to the individual consumer services. The control plane of the service mesh has the role of creating and removing service instances. Based on a specified event capacity that is to be provided by the consumer services collectively, the control plane manages service provisioning by estimating the current event capacity of the system. This is done by measuring the event capacities of each consumer service instance and summing them, from which any shortfall or excess of the current event capacity in relation to the specified event capacity can be determined. Consumer service instances are then added in case of a shortfall or removed in case of an excess as needed to avoid over or under-provisioning.