Microservice Metadata Recording for Routing Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In microservices environments, changes in deployment regions or versions can lead to errors in routing requests, making it difficult to identify and correct issues efficiently.

Innovation Solution

A system and method where an intermediary device registers microservices, records metadata such as deployment versions and regions, and routes requests based on this metadata to ensure accurate routing and error correction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If microservices are updated with changes in deployment region or version, then service functionality is improved, but routing errors occur and system reliability deteriorates

Engineering Contradiction:
Improveservice functionalityVSAvoidrouting accuracy
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by recording metadata about microservice deployment changes (region, version, environment) before routing requests. This metadata is stored in association with each microservice, enabling the system to proactively identify and adapt to deployment changes, thereby preventing routing errors before they occur.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by monitoring metadata changes and using this information to adjust routing decisions. When deployment changes are detected through metadata updates, the system feeds this information back into the routing logic to correct routing paths, ensuring requests are directed to the correct microservice instances despite deployment variations.

Inventive Principle:
Principle #23Feedback

2Difficulty of detecting and measuring

If metadata recording is implemented for all requests, then error identification capability is improved, but device complexity increases

Engineering Contradiction:
Improveerror identification capabilityVSAvoidsystem complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The system extracts only the essential metadata elements needed for routing decisions (deployment region, version, environment) rather than recording all possible service attributes. This selective extraction approach enables effective error identification while minimizing the complexity burden of metadata management and processing.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If metadata is recorded for each request, then routing accuracy is improved, but processing time increases

Engineering Contradiction:
Improverouting accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-recording and storing metadata about microservice deployment characteristics before requests are routed. This metadata is cached in association with each microservice, allowing the system to quickly retrieve routing information without performing complex analysis during request processing, thereby maintaining high routing accuracy while minimizing processing time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11418613B2Systems and methods for recording metadata about microservices for requests to the microservices
Publication Date: 2022.08.16 CITRIX SYSTEMS INC
  • US11418613B2 patent drawing
  • US11418613B2 patent drawing
  • US11418613B2 patent drawing

AI summary

Described embodiments provide systems and methods for recording metadata about a microservice for requests to the microservice. A device configured as a proxy to one or more microservices of a service can receive a registration request to register a microservice of the one or more microservices with the device. Metadata can be received during registration of the microservice with the device. The metadata can identify an identifier of the microservice, a deployment version of the microservice and a region of deployment of the microservice. The device can store the metadata in association with the microservice and record the metadata of the microservice registered with the device in association with a plurality of requests. The device can identify, via a user interface and the metadata recorded to the log, a change in operation of the microservice in connection with one of the deployment version or the region of the microservice.