Service Request Routing Using Decentralized Capability Assessment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Transitioning from monolithic services to microservices is challenging when the first type of service provides access to functionality and data not available via the second type, necessitating a method to determine which service will process a request for a resource.

Innovation Solution

A computer-implemented method where a routing component assesses whether to send a request to a first service, processes it if possible, and routes it to another service if not, reducing the burden on the routing component by minimizing storage and processing requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the routing component performs centralized assessment of service capabilities, then routing decisions can be made, but storage and processing requirements on the routing component become significant

Engineering Contradiction:
Improverouting decision capabilityVSAvoidrouting component burden
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the service capability assessment function from the routing component and relocates it to the service endpoints. Each service now independently publishes its own capability information to a registry, eliminating the need for the routing component to perform complex assessments and reducing its storage and processing burden.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a service registry as an intermediary between services and the routing component. The registry stores service capability information and provides it to the routing component on demand, acting as a mediator that eliminates the need for the routing component to directly assess service capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If monolithic services are transitioned to microservices, then service functionality and data access improve, but determining which service will process a request becomes more difficult

Engineering Contradiction:
Improveservice functionalityVSAvoidservice routing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by having services publish their capability information to the registry in advance, before any routing decisions are needed. This pre-publication of service capabilities allows the routing component to make informed decisions without performing complex assessments at request time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a universal service registry that can store and manage information for multiple service types (monolithic and microservices). This registry serves as a multi-functional intermediary that handles capability publication, storage, and retrieval for diverse service architectures, simplifying the routing process.

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

Data Source

PatentEP4668713A1Determining which service will process a request for a resource
Publication Date: 2025.12.24 SAP SE
  • EP4668713A1 patent drawingFigure 1
  • EP4668713A1 patent drawingFigure 2
  • EP4668713A1 patent drawingFigure 3

AI summary

Aspects relate to a computer implemented method, a computer program, a computer readable medium, and a computer system for determining which service of a plurality of services will process a request for a resource. The method comprises receiving a request for resource in determining whether to send a resource to offer service of the plurality of services. When it is determined to send the request to the first service, the method further comprises sending the request of the first service, assessing, by the first service, whether the first service can process the request. When the first service can process the request, the method further comprises processing, by the first service, the request. When the first service cannot process the request, the method further comprises responding, by the first service, to the request, routing the request to another service of the plurality of services based on the response.