Persistent Connection Scalability via Dynamic Idle Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems that establish persistent connections to reduce latency in data delivery face scalability issues due to the need to size servers based on worst-case active connections, leading to underutilization of resources since most connections are idle, resulting in increased costs and infrastructure requirements.

Innovation Solution

Implementing dynamic load balancing by migrating idle connections to other servers when resource thresholds are exceeded, allowing servers to manage resource usage based on connection types (idle or active) and characteristics, thereby optimizing resource allocation and increasing scalability without impacting user experience.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If servers establish persistent connections with sources to reduce latency, then data delivery speed is improved, but server resource utilization deteriorates due to underutilization of idle connections

Engineering Contradiction:
Improvedata delivery speedVSAvoidserver resource utilization
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system dynamically manages persistent connections by monitoring resource usage thresholds and automatically migrating idle connections between servers. This dynamic approach allows the system to adapt resource allocation in real-time, maintaining low latency for active connections while optimizing overall server resource utilization by relocating idle connections to underutilized servers.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of persistent connections by categorizing them as either active or idle based on data transmission status. This parameter change enables differential resource management strategies, where active connections receive dedicated resources for low latency, while idle connections are migrated to optimize resource utilization across the server fleet.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If servers size infrastructure based on worst-case active connections, then reliability is improved, but device complexity deteriorates due to over-provisioning

Engineering Contradiction:
Improvesystem reliabilityVSAvoidinfrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system replaces static worst-case sizing with dynamic resource allocation. By continuously monitoring connection states and automatically migrating idle connections, the system can reliably handle peak loads without permanently over-provisioning infrastructure, thereby reducing complexity while maintaining reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The load balancing system operates autonomously by self-monitoring resource usage thresholds and automatically migrating connections without manual intervention. This self-service capability allows the system to maintain reliability through automated resource optimization, reducing the complexity of manual infrastructure management.

Inventive Principle:
Principle #25Self-service

3Loss of time

If servers maintain all persistent connections ready for active use, then latency is reduced, but cost deteriorates due to increased infrastructure requirements

Engineering Contradiction:
Improveconnection establishment timeVSAvoidinfrastructure cost
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system dynamically allocates connection resources by migrating idle connections between servers based on real-time resource usage. This allows the system to maintain the capability for immediate connection establishment when needed while reducing overall infrastructure costs by consolidating idle connections onto fewer underutilized servers during low-activity periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The persistent connection infrastructure serves multiple functions: it maintains low latency readiness for active connections while simultaneously acting as a pool of relocatable resources for optimization. The same connection infrastructure provides both performance and cost-efficiency benefits through its multi-functionality.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11343329B1Techniques for increasing persistent connection scalability
Publication Date: 2022.05.24 AMAZON TECH INC
  • US11343329B1 patent drawing
  • US11343329B1 patent drawing
  • US11343329B1 patent drawing

AI summary

This disclosure describes, in part, techniques for increasing persistent connection scalability. For instance, a server may establish persistent connections with sources. The server may then determine, based on the types of persistent connections, an amount of at least one resource in use. For example, the server may determine that a first type of connection, such as an idle connection, uses a first amount of the resource(s) and a second type of connection, such as an active connection, uses a second amount of the resource(s). The server may then determine if the amount of the at least one resource in use satisfies one or more thresholds. If the amount of the at least one resource in use satisfies the one or more thresholds, the server may perform one or more actions. For example, the server may cease establishing new persistent connections, migrate the first type of connections, and/or migrate the second type of connections.