Asynchronous Data Stream Queue for Web Server Load Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional web servers handle requests synchronously, leading to increased server load and client wait times, as they transmit data one element at a time and require completion of each element before proceeding, which complicates the request/response process and hinders efficient data delivery.

Innovation Solution

Implementing a data provisioning system that allows asynchronous data collection and release through subscriptions to data streams, enabling simultaneous acquisition and communication of multiple data elements, with the option to release data elements synchronously or asynchronously, reducing server load and improving response times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If web servers handle requests synchronously one element at a time, then data delivery is simple and ordered, but server load increases and client wait times increase

Engineering Contradiction:
Improvedata delivery efficiencyVSAvoidclient wait time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the data delivery process into independent data elements that can be handled asynchronously. Each data element (header, body, footer, etc.) is treated as a separate unit that can be requested, transmitted, and received independently, allowing parallel processing of multiple elements simultaneously rather than sequential processing

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-fetching and buffering data elements before they are fully requested by the client. The server can prepare and stage multiple data elements in advance, so when the client requests them, they are already ready for immediate transmission, reducing wait time

Inventive Principle:
Principle #10Preliminary action

2Productivity

If web servers transmit data elements sequentially, then data integrity is maintained, but server load increases

Engineering Contradiction:
Improverequest handling capacityVSAvoidrequest/response process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary buffering layer between the server and client. This buffer acts as a mediator that manages the complexity of asynchronous data element transmission, coordinating the delivery of segmented data elements while maintaining overall data integrity without requiring complex server-side sequencing logic

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses copying by creating independent representations of data elements in the buffer zone. Each data element can be copied and prepared independently in memory, allowing the server to handle multiple copies simultaneously without interfering with the original data sources, thus increasing request handling capacity

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9251284B2Mixing synchronous and asynchronous data streams
Publication Date: 2016.02.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9251284B2 patent drawing
  • US9251284B2 patent drawing
  • US9251284B2 patent drawing

AI summary

A queue can store streams of data acquired from servers asynchronously based upon received data requests and subsequent subscription with respect to one or more data sources/servers. The queue can be managed for subsequent synchronous or asynchronous release of received streams of data, for example.