Call Request Aggregation via Dependency Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional call processing techniques in electronic commerce over networks introduce latency and inefficiencies due to the need for sequential processing of multiple API calls, limiting the ability to efficiently schedule and execute calls.

Innovation Solution

A system and method that aggregates call requests, identifies input and state dependencies, and processes calls in parallel, using a service execution map to optimize execution order and reduce latency by automatically providing input for subsequent calls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple API calls are made sequentially during online transactions, then each call can be processed with complete data, but network latency increases and network efficiency decreases

Engineering Contradiction:
Improvecall processing completenessVSAvoidnetwork latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges multiple sequential API calls into a single batch call, consolidating multiple data requests into one network transaction. This reduces the number of separate network round-trips, thereby decreasing network latency and improving network efficiency while maintaining complete data processing capability

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary actions by collecting and preparing multiple call requests before submitting them as a batch. Data is gathered and organized in advance, allowing parallel processing of multiple operations in a single network call, which reduces overall processing time and latency

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple API calls are merged into a single batch call, then network overhead is reduced, but the ability to tie calls together and schedule calls efficiently is limited

Engineering Contradiction:
Improvenetwork efficiencyVSAvoidcall scheduling flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The batch call is segmented into multiple individual call requests that are processed in parallel. Each call within the batch maintains its own data dependencies and execution context, allowing the system to preserve call-specific scheduling logic while benefiting from reduced network overhead through batched transmission

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically schedules calls within the batch based on data dependencies and execution requirements. Calls are organized into parallel execution groups that can be scheduled flexibly, adapting to varying data availability and processing needs while maintaining overall batch efficiency

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If calls are processed sequentially, then call dependencies are easily managed, but processing speed and execution efficiency are reduced

Engineering Contradiction:
Improvedependency managementVSAvoidcall processing speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The system uses feedback mechanisms to track data dependencies between calls within the batch. By analyzing which calls depend on data from other calls, the system dynamically determines execution order and parallelization opportunities, maintaining proper dependency management while enabling faster parallel processing where possible

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9633321B2Systems and methods for facilitating call request aggregation over a network
Publication Date: 2017.04.25 PAYPAL INC
  • US9633321B2 patent drawing
  • US9633321B2 patent drawing
  • US9633321B2 patent drawing

AI summary

A method for facilitating electronic commerce over a network includes identifying input dependencies for a call request based on information passed with the call request, identifying state dependencies for the call request based on information passed with the call request, parallelizing calls from the call request based on at least one of the identified input dependencies and the identified state dependencies, developing a service execution map by grouping calls in an execution order including parallelized calls, and processing the service execution map by executing grouped calls in the execution order including parallelized calls.