Application-Layer Connection Redistribution for Active-Active Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems struggle to efficiently redistribute long-lived application-layer connections among active-active service instances, leading to uneven distribution that can cause higher latency and underutilization of resources.
Innovation Solution
A connection balancer determines connection information and applies direction-dependent criteria to selectively terminate and reestablish connections, ensuring even distribution across service instances.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If long-lived connections are established between service instances and peers in an active-active configuration, then service availability and redundancy are improved, but connection distribution becomes uneven leading to higher latency and underutilization
Solution Approach 1:
The system dynamically monitors connection distribution across service instances and automatically redistributes connections when imbalance is detected. The connection balancer continuously evaluates connection states and performs selective termination and reestablishment to maintain optimal distribution, transforming the static connection model into a dynamic self-balancing system.
Solution Approach 2:
The connection balancer implements a feedback mechanism by monitoring connection distribution metrics across service instances and using this information to make intelligent redistribution decisions. The system collects connection state information, evaluates imbalance conditions, and triggers redistribution actions based on the monitored feedback, creating a closed-loop control system.
2Stability of the object's composition
If connections are allowed to remain established until natural termination, then connection stability is maintained, but load balancing capability is lost and service instances become underutilized
Solution Approach 1:
The connection balancer performs preliminary actions by proactively monitoring connection distribution and initiating redistribution before severe imbalance occurs. The system evaluates connection states continuously and terminates selected connections in advance to prevent overload conditions, rather than waiting for natural termination or reactive balancing.
Solution Approach 2:
The system changes the state parameter of connections from established to terminated for selected connections that need redistribution. By selectively changing the connection state parameter, the system enables rebalancing while maintaining overall connection stability through controlled, gradual adjustments rather than mass terminations.
3Productivity
If selective connection termination and reestablishment is implemented, then connection redistribution and load balancing are improved, but service disruption risk increases
Solution Approach 1:
The connection balancer applies partial action by selectively terminating only the minimum necessary connections to achieve rebalancing, rather than terminating all connections or using excessive force. The system identifies and terminates specific connections that contribute to imbalance while leaving other connections intact, minimizing service disruption.
Solution Approach 2:
The system provides beforehand cushioning by maintaining backup service instances in the active-active configuration that can immediately assume connections if redistribution causes temporary service degradation. The redundant instances act as a cushion against service disruption during the connection redistribution process.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The technology disclosed herein enables redistribution of connections between service instances by determining a subset of the connections and terminating the subset. In a particular example, a method includes determining connection information about connections established with service instances operating in an active-active configuration. The connection information identifies directions of connection initiation for the connections and identifies peers for the connections. Based on the connection information, the method includes determining a subset of the connections for reestablishment on a per-peer basis using direction-dependent criteria and terminating the subset of the connections.