Self-Healing Stateless Microservice Nodes via Randomized Reset Timing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network management systems are vulnerable to failures due to memory leaks, file handle leaks, and other issues that can lead to service degradation or complete failure, and predictive methodologies are costly, time-consuming, and prone to false positives, especially during usage spikes.

Innovation Solution

A method where individual processes in a service cluster randomly generate and broadcast reset times, allowing them to self-heal by shutting down and restarting independently without disrupting the overall cluster, using a one-way datagram communication algorithm.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If individual processes are reset frequently to prevent memory leaks and failures, then service reliability is improved, but service downtime increases

Engineering Contradiction:
Improveservice reliabilityVSAvoidservice downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements periodic reset actions for microservice nodes, where each node is randomly selected and reset at scheduled intervals. This periodic action prevents memory leaks and service degradation while maintaining overall service availability through the stateless nature of the nodes and load balancer redistribution.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system changes the operational state parameter of selected microservice nodes from active to reset state temporarily. By randomly selecting nodes and resetting them individually rather than all nodes simultaneously, the system maintains service continuity while preventing failures through periodic parameter changes.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If all microservice nodes are reset simultaneously to ensure complete service renewal, then service reliability is improved, but service availability deteriorates

Engineering Contradiction:
Improveservice reliabilityVSAvoidservice availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the reset operation into individual node-level actions rather than a cluster-wide simultaneous operation. Each microservice node is independently selected and reset, allowing other nodes to continue serving requests. This segmentation maintains service availability while achieving reliability through individual node renewal.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic node selection for resets using random selection rather than static scheduled resets for all nodes. This dynamic approach allows the system to adaptively choose which nodes to reset based on current state, preventing simultaneous resets that would cause service unavailability while maintaining reliability through continuous node renewal.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If predictive methodologies are used to determine reset timing, then reset precision is improved, but system complexity and cost increase

Engineering Contradiction:
Improvereset timing precisionVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system implements self-service through random node selection and automatic reset execution without requiring complex predictive analytics or manual intervention. Each node independently receives reset commands based on random selection, and the load balancer automatically redistributes traffic, eliminating the need for complex prediction systems while maintaining effective service renewal.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10884864B2Autonomous self-healing stateless microservice nodes
Publication Date: 2021.01.05 KYNDRYL INC
  • US10884864B2 patent drawing
  • US10884864B2 patent drawing
  • US10884864B2 patent drawing

AI summary

A computer-implemented method includes: randomly generating, by a process running on a computer device, a reset time for the process; broadcasting a message to other processes in a cluster, the message including the reset time; entering a running state; receiving another message from one of the processes, the other message including another reset time; comparing the other reset time to the reset time; and in response to the comparing, the process performs one of: continuing in the running state based on the other reset time being different than the reset time; and randomly generating a new reset time for the process based on the other reset time coinciding with the reset time.