Microservice Context Capture for Stateful Restart

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud-based information processing systems, managing microservices is challenging due to the lack of efficient mechanisms for intelligent re-initiation after failure, particularly in container-based environments where stateless microservices lose context, leading to inefficient restarts and data loss.

Innovation Solution

The implementation of context-based intelligent re-initiation techniques, where an orchestrator microservice receives and stores context information from participating microservices, enabling them to re-initiate from the precise state of failure, rather than starting from scratch, using service context management and initiation modules within the system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If microservices are designed to be stateless for ease of deployment and scaling, then ease of operation is improved, but loss of information occurs when services fail and need to be restarted

Engineering Contradiction:
Improveease of deploymentVSAvoidcontext information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The system performs preliminary action by capturing and storing context information from microservices before failures occur. The context capture module continuously monitors and stores execution state, transaction details, and service metadata in a database, ensuring that when a service fails and is restarted, the context is already available to resume execution without loss.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If microservices are restarted from scratch after failure, then reliability is improved through simple re-initialization, but loss of time occurs due to redundant processing

Engineering Contradiction:
Improveservice recoveryVSAvoidrestart time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements feedback by continuously monitoring the health and execution state of microservices. When a failure is detected, the context management module retrieves previously stored context information and feeds it back to the restarted service, enabling resumption from the exact point of failure rather than restarting from scratch, thus reducing restart time while maintaining reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Context information including execution state, transaction identifiers, and service metadata is captured and stored in advance before failures occur. This preliminary capture ensures that when services are restarted, they can immediately resume from the stored context without redundant processing, significantly reducing restart time while ensuring reliable recovery.

Inventive Principle:
Principle #10Preliminary action

3Loss of information

If context information is continuously captured and stored for all microservices, then loss of information is prevented, but use of energy increases due to additional processing and storage requirements

Engineering Contradiction:
Improvecontext preservationVSAvoidcomputational overhead
Core Design Contradiction:
Loss of informationVSUse of energy by moving object

Solution Approach 1:

The system applies local quality by selectively capturing and storing context information based on service criticality, transaction importance, and failure probability. Not all microservices or all execution states are captured with equal detail - the system adjusts the level of context preservation locally for different services and situations, reducing overall computational overhead while preventing information loss for critical operations.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11223522B1Context-based intelligent re-initiation of microservices
Publication Date: 2022.01.11 DELL PROD LP
  • US11223522B1 patent drawing
  • US11223522B1 patent drawing
  • US11223522B1 patent drawing

AI summary

An apparatus comprises at least one processing device comprising a processor coupled to a memory. The at least one processing device is configured to receive, at a first microservice, context information for a second microservice, the context information characterizing a current state of execution of one or more tasks by the second microservice. The at least one processing device is also configured to detect, by the first microservice, failure of the second microservice. The at least one processing device is further configured to re-initiate, by the first microservice, the second microservice utilizing the received context information for the second microservice. Re-initiating the second microservice utilizing the received context information for the second microservice enables the re-initiated second microservice to continue execution of the one or more tasks from the current state.