Service Addressing via Failure Database Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed environments, existing service addressing strategies for failure isolation are computationally costly and resource-intensive, especially during high concurrency, as they require real-time monitoring and statistics for load and concurrency, leading to inefficiencies in service invocation.
Innovation Solution
A method that involves maintaining a failure database with statistical failure times for servers, sorting and isolating failed servers based on these statistics, and randomly selecting a target server from a filtered list to reduce computational burden and improve efficiency, allowing for retry mechanisms and periodic reset of failure counts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If real-time load monitoring and statistics are performed for each service invocation, then service failure isolation is improved, but computing resources and network transmission resources are excessively occupied
Solution Approach 1:
The patent pre-calculates and stores historical load data and concurrency statistics in a database before service invocations occur. When a service invocation fails, the addressing strategy directly queries this pre-stored data to identify failed servers, avoiding the need for real-time monitoring and statistics collection during each invocation attempt.
2Reliability
If real-time statistics on concurrent invocation amount are performed for each service invocation, then service failure isolation is improved, but computing burden is increased
Solution Approach 1:
The patent pre-calculates and stores historical concurrency statistics in a database before service invocations occur. When a service invocation fails, the addressing strategy directly queries this pre-stored data to identify failed servers, avoiding the need for real-time statistics collection during each invocation attempt.
3Reliability
If weight calculation is performed for each service invocation, then service failure isolation is improved, but computing cost is increased
Solution Approach 1:
The patent pre-calculates and stores server weights in a database before service invocations occur. When a service invocation fails, the addressing strategy directly queries this pre-stored weight data to identify failed servers, avoiding the need for weight calculation during each invocation attempt.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An example service addressing method in a distributed environment includes: generating a service querying request, the service querying request including a querying condition; acquiring a first server address list of a target service corresponding to the querying condition; acquiring a failed server address list; deleting the failed server address list from the first server address list to obtain a second server address list; selecting a target server address from the second server address list; and initiating an invocation of the target service to the target server address. The techniques of the present disclosure improve the efficiency of the service invocation.