Dynamic Microservice Removal in Resource-Constrained Test Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Microservice test environments often lack sufficient resources (nodes, memory, CPU, storage) to execute a complete microservice test suite, leading to inefficiencies in resource allocation and constrained testing scenarios.
Innovation Solution
A computer-implemented method dynamically removes unnecessary microservices from the test environment to free up resources, allowing the execution of the test suite with the required set of microservices, and optionally generates a data structure to identify removed services.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all microservices are maintained in the test environment, then service completeness is improved, but resource availability deteriorates
Solution Approach 1:
The test environment dynamically adjusts the set of active microservices based on test requirements and resource availability. The system determines which microservices to activate or deactivate depending on the specific test suite being executed, transforming a static environment into a flexible, adaptive one that optimizes resource allocation while maintaining necessary service completeness.
Solution Approach 2:
The system segments the microservice set into different groups based on test requirements. Instead of maintaining all microservices simultaneously, the system divides them into subsets that are activated only when needed for specific test scenarios, allowing resource-efficient testing while preserving the ability to test complete service sets when resources permit.
2Quantity of substance
If microservices are removed from the test environment, then resource availability is improved, but service completeness deteriorates
Solution Approach 1:
The system performs preliminary analysis to determine which microservices are required for upcoming test suites. Before executing tests, it proactively activates only the necessary microservices and deactivates others, ensuring resource availability is optimized in advance while maintaining service completeness only when and where needed for the specific test execution.
3Device complexity
If a single test environment is used, then infrastructure cost is reduced, but resource capacity deteriorates
Solution Approach 1:
The system transforms a single test environment into a multi-functional platform that can dynamically adapt to different test requirements. By implementing intelligent microservice activation and deactivation based on test suite requirements, the same physical infrastructure can efficiently support multiple different testing scenarios, effectively increasing resource capacity utilization without requiring additional infrastructure.
Data Source
AI summary
Processing within a computing environment is facilitated by determining a set of microservices needed to execute a microservice test suite in a test environment, where the test environment is an active microservice test environment with a plurality of microservices. The process also includes determining that the test environment lacks sufficient resources to run the microservice test suite with the set of microservices, and dynamically removing at least one microservice of the plurality of microservices from the test suite not needed to execute the microservice test suite to free test environment resources for executing the microservice test suite with the set of microservices. The process also includes initiating executing, based on the dynamically removing, the microservice test suite in the test environment.


