Messaging Overflow Service for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Messaging systems face latency issues during heavy loads, leading to unprocessed messages in the message queue, which can result in outdated query results due to the slow and expensive process of scaling the data store to handle increased capacity.

Innovation Solution

A messaging overflow service is introduced that dynamically launches to consume unprocessed messages from the message queue, processing them and storing results in a cache, allowing query processes to retrieve updated values by checking both the data store and cache, thus alleviating the load on the data store and message queue.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the data store capacity is increased to handle heavy messaging load, then the messaging service can process more messages, but the scaling process is slow and expensive

Engineering Contradiction:
Improvemessage processing capacityVSAvoidscaling time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments the messaging workload by introducing a separate overflow service that handles excess messages independently from the main data store. This segmentation allows the overflow service to process messages in parallel without requiring scaling of the primary data store infrastructure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The overflow service acts as an intermediary component between the message queue and the data store. It receives overflow messages, processes them independently, and stores results in a cache, thereby mediating the load between the queue and the primary data store without requiring data store scaling.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the data store capacity is increased to handle heavy messaging load, then the messaging service can process more messages, but scaling is expensive

Engineering Contradiction:
Improvemessage processing capacityVSAvoidscaling cost
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The overflow service uses a cache with temporary storage that is cheaper than persistent data store infrastructure. This cache provides short-term storage for processed messages, reducing the need for expensive data store scaling while maintaining message processing capability.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The overflow service serves as a cost-effective intermediary that handles overflow traffic using less expensive caching infrastructure rather than requiring proportional scaling of the expensive primary data store capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If message handlers process messages from the message queue, then messages are handled, but during heavy load latency increases causing outdated query results

Engineering Contradiction:
Improvemessage processing throughputVSAvoidprocessing latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments the message processing workload by routing overflow messages to a dedicated overflow service, separating them from the main message handler workflow. This segmentation prevents latency in the primary processing path while maintaining overall throughput.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The overflow service performs preliminary processing of overflow messages independently, so when queries need results, the data is already processed and available in the cache, eliminating waiting time for query operations.

Inventive Principle:
Principle #10Preliminary action

4Speed

If a cache is introduced to store processed values, then query speed improves, but system complexity increases

Engineering Contradiction:
Improvequery retrieval speedVSAvoidsystem architecture complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The overflow service's cache serves multiple functions: it stores processed overflow message results, provides fast query responses, and reduces load on the primary data store. This multi-functionality justifies the added complexity by delivering multiple benefits from a single component.

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

Data Source

PatentUS11115365B1Messaging overflow service
Publication Date: 2021.09.07 AMAZON TECH INC
  • US11115365B1 patent drawing
  • US11115365B1 patent drawing
  • US11115365B1 patent drawing

AI summary

A technology is provided for reducing latency in a messaging system. Unprocessed messages in a message queue are consumed via a messaging overflow service launched in response to an alarm triggered by a monitoring service that indicates the message queue has reached a predetermined threshold. The unprocessed messages are processed via the messaging overflow service to generate a processed data store values. The processed data store values are stored in a cache associated with the messaging overflow service.