Load Balancing in High-Availability Clusters via Task Queue Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In high-availability clusters, the primary node often becomes overloaded and unavailable due to performing all tasks, leading to reduced performance capability and wastage of computing resources, which can result in unavailability and reduced network reliability.
Innovation Solution
Implementing a load balancing mechanism where tasks are queued and selectively performed by both primary and secondary nodes based on their operating states, allowing them to share session information and mitigate faults through near instantaneous failover and reversion of stateful network traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the primary node performs all tasks in the high-availability cluster, then task completion is ensured, but the primary node becomes overloaded and unavailable, reducing performance capability and network reliability
Solution Approach 1:
The patent divides the task execution responsibility between multiple nodes (primary node and secondary nodes) instead of concentrating all tasks on the primary node. The task queue is segmented and distributed to available nodes, preventing any single node from becoming overloaded while maintaining continuous task completion capability.
Solution Approach 2:
The patent combines the capabilities of multiple nodes (primary and secondary) to form a unified task execution system. By merging their processing powers through the shared task queue mechanism, the cluster achieves both high reliability (through redundancy) and maintained performance capability (through distributed processing).
2Reliability
If the primary node performs all tasks, then task execution is centralized, but computing resources are wasted and the node becomes unavailable
Solution Approach 1:
The patent segments the computing workload across multiple nodes (primary and secondary nodes) that share access to the task queue. This distribution prevents any single node from being overutilized while ensuring that computing resources are effectively used across the cluster, eliminating resource wastage.
Solution Approach 2:
The system implements automatic load distribution where secondary nodes can autonomously pick up tasks from the task queue when the primary node is unavailable or overloaded. This self-service mechanism ensures continuous operation without manual intervention and optimizes resource utilization dynamically.
3Productivity
If tasks are distributed between primary and secondary nodes, then load balancing is achieved, but system complexity increases
Solution Approach 1:
The patent creates a universal task queue structure that can be accessed by any node (primary or secondary) in the cluster. This multi-functional design allows the same queue mechanism to serve multiple purposes: task distribution, load balancing, and failover management, thereby managing complexity through standardization rather than increasing it.
Solution Approach 2:
The task queue acts as an intermediary mechanism between nodes, simplifying the complexity of direct node-to-node communication and coordination. By introducing this intermediate structure, the system manages task distribution and load balancing without requiring complex peer-to-peer protocols or centralized control mechanisms.
Data Source
AI summary
A first network device may configure a high-availability cluster associated with a network that includes the first network device and a second network device. The first network device may identify a plurality of devices communicatively coupled to the network and determine a set of tasks for the plurality of devices. The first network device may queue the set of tasks in a task queue that is accessible to the second network device. The second network device may perform a first task and the first network device may perform a second task of the set of tasks. The first network device may receive first result information that is associated with a performance of the first task. The first network device may determine a result associated with performing the second task. The first network device may synchronize the first result information and the second result information with the second network device.


