Service Routing Preference Propagation in Microservices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In microservices-based distributed systems, existing technologies face challenges in efficiently routing instructions between different service instances while preserving routing preferences, leading to suboptimal load balancing and version management.

Innovation Solution

A method and system that obtain and generate instructions associated with routing preferences, propagating and preserving these preferences through the routing module and service instances, allowing for the selection of preferred service versions based on load balancing policies and routing policies, and storing preferences in cookies for subsequent calls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If routing instructions are propagated through service instances without preserving routing preferences, then system complexity is reduced, but load balancing efficiency deteriorates

Engineering Contradiction:
Improverouting system complexityVSAvoidload balancing efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent introduces a routing preference object as an intermediary carrier that transports routing information through the service chain. This preference object is embedded in instruction packets and passed between service instances, enabling load balancing decisions without requiring complex direct communication between routing components. The intermediary carries essential routing state (service version preferences, load balancing parameters) through the distributed system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary action by establishing routing preferences before instructions are routed through service instances. The routing preference is determined upfront based on load balancing policies and service version requirements, then attached to the instruction packet. This allows downstream service instances to make informed routing decisions without real-time coordination overhead.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If routing preferences are preserved and propagated through all service instances, then version management accuracy is improved, but information loss increases

Engineering Contradiction:
Improveversion management accuracyVSAvoidrouting preference loss
Core Design Contradiction:
Manufacturing precisionVSLoss of information

Solution Approach 1:

The patent implements copying by creating replicas of the routing preference object at each service instance along the instruction chain. Each service instance receives a copy of the routing preference, processes it independently, and forwards it to the next instance. This ensures version management accuracy is maintained across all instances while the preference information is preserved through systematic replication rather than sequential transformation.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The routing preference object is designed as a universal data structure that serves multiple functions simultaneously: it carries service version identification, load balancing parameters, and routing decision criteria. This multi-functional design allows the same object to be processed by different service instances with different requirements, preventing information loss through format conversion or adaptation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If service versions are selected based on load balancing policies, then system reliability is improved, but routing complexity increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidrouting complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by making the routing preference object adaptable and modifiable based on system state. Load balancing policies dynamically adjust routing preferences according to current service instance availability, load conditions, and version compatibility requirements. This allows the system to maintain reliability through flexible, state-aware routing decisions while avoiding hard-coded complex routing logic.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11606420B1Method and apparatus for service routing
Publication Date: 2023.03.14 DELL PROD LP
  • US11606420B1 patent drawing
  • US11606420B1 patent drawing
  • US11606420B1 patent drawing

AI summary

A method comprising: obtaining a first instruction for a first service, the first instruction being associated with a routing preference; generating a second instruction for the first service based on the first instruction; associating the second instruction with the routing preference; and providing the second instruction to the first service, wherein associating the second instruction with the routing preference includes at least one of inserting an indication of the routing preference in the second instruction.