Self-Learning Message Retry Graphs for Distributed Middleware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing message retry mechanisms in message-oriented middleware systems blindly repeat processing attempts without considering message dependencies, leading to wasteful resource expenditure when dependencies are not satisfied.

Innovation Solution

Implement a self-learning mechanism to identify and generate dependency graphs between messages, delaying retries until all dependencies are met, using artificial intelligence models trained on message arrival and error logs to optimize retry processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If automated retry mechanisms are implemented without considering message dependencies, then message processing reliability is improved, but system resource waste increases due to unnecessary retry attempts

Engineering Contradiction:
Improvemessage processing reliabilityVSAvoidsystem resource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary analysis of message dependencies before executing retry operations. By pre-building dependency graphs and analyzing message relationships in advance, the system determines whether retry attempts are necessary before consuming system resources, thereby avoiding wasted retries on messages whose failures are caused by unsatisfied dependencies rather than actual processing errors

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms that monitor message processing outcomes and dependency satisfaction status. When a message fails processing, the system checks the dependency graph to determine if the failure is due to unsatisfied dependencies or actual errors. This feedback loop prevents unnecessary retries by providing intelligent decision-making based on real-time system state

Inventive Principle:
Principle #23Feedback

2Productivity

If dependency analysis is implemented for message retry optimization, then system resource efficiency is improved, but device complexity increases due to additional processing requirements

Engineering Contradiction:
Improvesystem resource efficiencyVSAvoidprocessing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis of message dependencies before executing retry operations. By pre-building dependency graphs and analyzing message relationships in advance, the system determines whether retry attempts are necessary before consuming system resources, thereby avoiding wasted retries on messages whose failures are caused by unsatisfied dependencies rather than actual processing errors

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates simplified representations (dependency graphs) of complex message relationships. Instead of analyzing actual message content and relationships during retry decisions, the system uses pre-generated dependency graphs that capture essential dependency information, reducing the computational complexity of retry decision-making while maintaining accuracy

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250307638A1Message retry optimization using self-learning
Publication Date: 2025.10.02 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20250307638A1 patent drawing
  • US20250307638A1 patent drawing
  • US20250307638A1 patent drawing

AI summary

A system, method, and computer program product that are configured to: learn dependency relationships between types of messages in a distributed computing system that utilizes message-oriented middleware; generate a dependency graph associated with a first type of message, wherein the dependency graph includes respective ones of the dependency relationships associated with the first type of message; and delay an automated retry of processing a message of the first type of message until all the dependency relationships included in the dependency graph are satisfied.