Microservice API Load Estimation for Egress Call Impact
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing microservice architectures face challenges in efficiently managing API usage impacts on performance, leading to inefficiencies and increased costs due to loose coupling and independent scaling needs.
Innovation Solution
A computer-implemented process using a static analyzer and load estimator to generate weights and determine loads for egress API call sites, allowing for microservice modifications based on these metrics to optimize performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If microservices are independently deployed and scaled, then adaptability and ease of modification are improved, but system complexity and difficulty in managing API usage impacts increase
Solution Approach 1:
The patent introduces an intermediary system comprising a static analyzer, load estimator, and performance predictor that mediates between microservices and their API interactions. This intermediary automatically analyzes API call sites, generates weights, estimates loads, and predicts performance impacts without requiring manual system-wide coordination, thus resolving the complexity issue while preserving independent deployability
Solution Approach 2:
Each microservice is equipped with self-service capabilities through the static analyzer that automatically identifies egress API call sites and generates weights without external intervention. The service can independently estimate its own load and predict performance impacts of API usage changes, enabling autonomous optimization while maintaining the benefits of independent deployment
2Reliability
If loose coupling is implemented between microservices, then fault isolation and resilience are improved, but ability to manage and detect API usage impacts deteriorates
Solution Approach 1:
The patent implements a feedback mechanism where the static analyzer continuously monitors API call sites, the load estimator measures actual load, and the performance predictor compares expected versus actual performance. This feedback loop enables detection of API usage impacts across loosely-coupled services by automatically tracking and analyzing the effects of API interactions without requiring tight coupling
Solution Approach 2:
The patent replaces manual mechanical analysis of API impacts with an automated computational system. The static analyzer uses automated code analysis, the load estimator uses computational modeling, and the performance predictor uses algorithmic prediction to substitute human effort in detecting and measuring API usage impacts across distributed microservices
3Manufacturing precision
If static analysis includes weight generation for egress API call sites, then manufacturing precision of performance optimization is improved, but device complexity increases
Solution Approach 1:
The patent segments the performance analysis system into distinct modular components: a static analyzer module that generates weights for individual egress API call sites, a load estimator module that calculates loads, and a performance predictor module that forecasts impacts. Each module handles a specific aspect of the analysis, improving precision through specialized processing while managing complexity through modular architecture that can be implemented incrementally
Data Source
AI summary
A computer hardware system includes a static analyzer, a load estimator, and a hardware processor configured to perform the following executable operations. Using the static analyzer and for each egress API call site respectively associated with an ingress API handler of a microservice, a weight is generated and is included within a static analysis of the microservice also generated by the static analyzer. Using the load estimator and for each of the egress API call sites, a load is determined based upon the weight for the egress API call site, a number of times, over a predetermined period of time, a particular ingress API handler associated with the egress API call site is called, and a cost of a call to the egress API call site. Based upon the load, the microservice is modified.


