Persistent Message Store for Distributed System Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed systems with non-deterministic components, abnormal terminations are difficult to debug due to the variability in system states and outputs caused by the same set of input messages, requiring numerous executions to recreate faults.

Innovation Solution

Implementing a persistent message store that copies and records messages in a service-oriented architecture, using a rules engine to determine which messages to copy and store, allowing for error checking and auditing, and enabling the recreation of previous system states for debugging purposes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a persistent message store is implemented to copy and record messages for debugging purposes, then the ability to recreate system states is improved, but the device complexity increases

Engineering Contradiction:
Improveability to recreate system statesVSAvoidcomplexity of message copying mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a persistent message store that creates copies of messages in a distributed system. A message copying mechanism intercepts messages between service components and stores them in a persistent store, enabling later reproduction of system states for debugging without altering the original message flow or requiring complex state management infrastructure

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a message copying mechanism as an intermediary component that sits between the message producer and message consumer. This intermediary selectively copies messages based on predetermined criteria without disrupting the normal message flow, thereby adding debugging capability while maintaining system operational simplicity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If all messages are copied and stored for debugging, then the completeness of debug information is improved, but the loss of time for message processing increases

Engineering Contradiction:
Improvecompleteness of debug informationVSAvoidtime for message processing
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent applies partial action by implementing selective message copying based on predetermined criteria such as message type, source, destination, or content patterns. The rules engine evaluates each message and copies only those that meet the specified criteria, avoiding the overhead of copying all messages while still capturing sufficient information for effective debugging

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent establishes message copying rules in advance through a rules engine that is configured with predetermined criteria before the system operates. This preliminary configuration allows the system to quickly determine whether to copy a message without performing complex analysis during message processing, thereby minimizing time loss while ensuring complete capture of relevant debug information

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7937497B2Apparatus for selectively copying at least portions of messages in a distributed computing system
Publication Date: 2011.05.03 RED HAT INC
  • US7937497B2 patent drawing
  • US7937497B2 patent drawing
  • US7937497B2 patent drawing

AI summary

A method and apparatus for using a persistent message store in a distributed computing system having a service oriented architecture. A message is detected that is transmitted from a message producer to a message consumer in the distributed computing system having the service oriented architecture. A determination is made as to whether the message should be copied based on at least one predetermined criterion. A copy of the message is generated if the message is to be copied. The copy of the message is stored in the persistent message store.