Incremental API Processing for Server Load Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cloud computing environments, large API requests from mobile applications can lead to inefficiencies and errors due to high server resource consumption and unreliable network access, particularly during peak hours when server resources are scarce.
Innovation Solution
The implementation of an adaptive model, known as 'Relay-based Priming,' which splits API processing into multiple requests based on server utilization, adjusting the number of processing units and payload size according to current server availability, thereby dynamically managing resource consumption and reducing error occurrences.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If large API requests are processed in a single batch, then complete data retrieval is achieved, but server resource consumption increases and error rates rise during peak hours
Solution Approach 1:
The patent divides large API requests into smaller incremental batches, processing them in multiple stages rather than as a single large transaction. This segmentation reduces the resource burden on servers during peak hours and lowers error rates by breaking down complex operations into manageable units that can be handled even under load.
Solution Approach 2:
The system dynamically adjusts the batch size and processing strategy based on real-time server resource availability. When resources are abundant, larger batches are processed; when resources are scarce (peak hours), the system automatically reduces batch sizes or delays non-critical processing, ensuring reliable operation across varying load conditions.
2Use of energy by moving object
If incremental processing is used to reduce server load, then resource consumption decreases, but response time increases due to multiple requests
Solution Approach 1:
The system performs preliminary actions by caching frequently accessed data and pre-processing information that can be reused across multiple incremental requests. This reduces the actual processing time required for each incremental batch, mitigating the overall response time penalty while maintaining reduced server resource consumption.
Solution Approach 2:
The incremental processing is designed to maintain continuous useful action by overlapping data preparation and transmission operations, and by keeping client-side processing pipelines active. This ensures that while multiple requests are made, the system minimizes idle time and maintains efficient data flow, reducing the perceived response time despite the incremental nature of processing.
3Reliability
If adaptive processing based on server utilization is implemented, then reliability improves, but system complexity increases
Solution Approach 1:
The system implements feedback mechanisms where server resource utilization metrics are continuously monitored and fed back into the request processing logic. This automated feedback loop enables adaptive adjustment of processing strategies without requiring complex manual configuration or decision-making, improving reliability through data-driven decisions while keeping the added complexity manageable.
Solution Approach 2:
The processing system performs self-service by automatically adjusting its own behavior based on server conditions, without requiring external intervention or complex coordination. The adaptive logic is embedded within the processing framework itself, allowing it to autonomously optimize its operation in response to changing server utilization, thereby improving reliability with controlled complexity.
Data Source
AI summary
System and methods are described for receiving a request from a client application to obtain data from a server; collecting a list of tasks to be performed by the server to process the request to obtain the data; performing tasks from the list of tasks by the server until an elapsed time to perform the list of tasks exceeds a first threshold and a size of a payload storing the data exceeds a second threshold; preparing the payload; and sending the payload to the client application.


