Fan-out Message Queuing for Distributed Workload Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computing systems face challenges with workload distribution across multiple hosts, leading to potential correlated failures and uneven task distribution, resulting in increased latency and underutilization of resources due to shared resource unavailability and disproportionate load.

Innovation Solution

A publication-subscription system employing messaging queues to apportion workload across multiple instances, using a fan-out model to sub-divide topics into fragments, allowing each instance to manage a manageable workload and ensure timely message delivery without overloading any single host.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple computing resources are shared to provide services, then resource utilization is improved, but correlated failures occur when a host becomes unavailable

Engineering Contradiction:
Improveresource utilizationVSAvoidsystem availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the subscriber base into multiple fragments, where each fragment is assigned to a different instance. This segmentation ensures that if one host fails, only the subscribers in that specific fragment are affected, while other fragments continue to receive messages through their respective instances, thereby preventing correlated failures across the entire system.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If workload is concentrated on fewer hosts, then device complexity is reduced, but task distribution becomes uneven causing increased latency

Engineering Contradiction:
Improvesystem complexityVSAvoidmessage delivery latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system segments the workload by dividing subscribers into fragments and assigning each fragment to a separate instance. This distribution of workload across multiple instances prevents any single host from becoming overloaded, thereby maintaining efficient message delivery latency while managing system complexity through the fragment-based approach.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by creating fragments of subscribers rather than distributing individual subscribers directly. This fragment-based dimension allows for more granular control and balanced workload distribution across instances, improving latency without excessively increasing complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Device complexity

If all subscribers are assigned to a single instance, then device complexity is minimized, but workload becomes disproportionate leading to underutilized resources

Engineering Contradiction:
Improveinstance management complexityVSAvoidresource utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the subscriber base into multiple fragments and assigns each fragment to different instances. This segmentation enables proportional workload distribution across multiple instances, ensuring that resources are utilized efficiently without creating disproportionate loads on any single instance, thereby improving overall resource utilization.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10887253B1Message queuing with fan out
Publication Date: 2021.01.05 AMAZON TECH INC
  • US10887253B1 patent drawing
  • US10887253B1 patent drawing
  • US10887253B1 patent drawing

AI summary

Current distributed message queuing services are designed to share resources in order to fulfill greater amounts of information; however, resource sharing often leads to correlated failures, task distribution problems, and misaligned load balancing of those shared resources. By maintaining a queue of publish request messages to be retrieved by message processors when the workload of the message processors is available, the enqueued messages are processed and fanned-out in order to provide information in the messages to the subscribers without latency or loss of data.