Distributed API Accounting for Edge Server Limit Enforcement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional systems face challenges in efficiently tracking and enforcing API request limits across distributed edge servers due to high computational costs and potential losses in notification processing, leading to inconsistencies in service delivery.
Innovation Solution
Implementing a distributed API accounting system with a master counter server that aggregates local counter values from agents on edge servers, allowing asynchronous updates and agent replacement to ensure continuous tracking and enforcement of API request limits without disrupting service.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a central counter tracks every API request notification in real-time, then accurate API request limit enforcement is achieved, but computational cost and processing time increase significantly
Solution Approach 1:
The patent divides the centralized counter into distributed local counters at each edge server. Each edge server independently tracks its own API request count, eliminating the need for the central server to process every individual request notification. This segmentation reduces computational load on the central server while maintaining accurate tracking through periodic aggregation of local counter values.
Solution Approach 2:
The patent implements preliminary action by having edge servers pre-calculate and maintain local counter values before the central server needs to aggregate them. Edge servers continuously update their local counters as requests are serviced, so when the central server requests aggregation, the data is already prepared and available immediately, reducing processing time and computational overhead.
2Loss of information
If the central server processes all notification data, then complete tracking of serviced API requests is achieved, but system complexity and processing overhead increase
Solution Approach 1:
The patent segments the tracking function by distributing local counters to each edge server. Each edge server independently maintains its own counter, reducing the complexity of centralized processing. The central server only performs simple aggregation of these segmented local values, significantly reducing overall system complexity while maintaining complete tracking through the sum of all local counters.
Solution Approach 2:
The patent implements self-service by enabling edge servers to autonomously maintain their own local counters without requiring continuous central server intervention. Each edge server independently tracks its requests and only communicates with the central server when aggregation is needed, reducing the processing complexity burden on the central server while ensuring complete tracking information is maintained at the source.
3Reliability
If connection between central server and edge servers is maintained, then real-time notification reception is achieved, but vulnerability to connection losses and service disruptions increases
Solution Approach 1:
The patent implements preliminary action by having edge servers pre-calculate and continuously maintain local counter values independently of central server connectivity. This ensures that even when connections are lost, the edge servers can continue tracking requests locally. When connectivity is restored, the pre-maintained local values can be aggregated without interruption, reducing the impact of connection losses on overall system reliability.
4Measurement precision
If every serviced API request is notified in real-time, then accurate counting is achieved, but processing time and system response latency increase
Solution Approach 1:
The patent segments the counting process into independent local counter operations at each edge server, which update immediately without waiting for central server processing. This maintains precise local tracking while eliminating the time delay associated with real-time centralized processing. The central server performs aggregation only when needed, significantly reducing overall processing time while maintaining count accuracy through the segmented approach.
Solution Approach 2:
The patent implements preliminary action by having edge servers continuously update their local counters in advance of any aggregation request. This pre-calculation ensures that when the central server needs the total count, the data is already prepared and available immediately, eliminating processing delays while maintaining accurate measurement through the pre-maintained local values.
Data Source
AI summary
Distributed API accounting is disclosed, including: receiving from respective ones of a plurality of agents, a plurality of local counter values corresponding to an application programming interface (API) service counter identifier; logging the plurality of local counter values corresponding to the API service counter identifier; receiving a request for an aggregated counter value associated with the API service counter identifier; combining at least some of the logged plurality of local counter values associated with the API service counter identifier to determine the aggregated counter value corresponding to the API service counter identifier; and storing the aggregated counter value corresponding to the API service counter identifier.


