Middleware Message Queue Tracking for Agent Resumption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Loosely coupled specialized systems, such as accounting and engineering systems, face integration complexities and system failures due to the need for redundant data maintenance and complex programming, leading to increased processing burdens and difficulties in ensuring data accuracy and timely updates.

Innovation Solution

Implementing a middleware application that tracks record numbers in a message queue, allowing agents to associate messages with their current processing status, enabling seamless reconnection and continuation of data processing after failures without requiring extensive code modifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If agents integrate routines to remember and store current record being processed, then reliability is improved, but device complexity increases

Engineering Contradiction:
ImprovereliabilityVSAvoidcode complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a middleware application as an intermediary between the agent and the message queue. The middleware maintains the association between agents and current record numbers, eliminating the need for agents to integrate complex tracking routines. This mediator approach resolves the contradiction by centralizing the reliability function in the middleware while keeping agent code simple.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If agents start from the beginning of message queue entries after failure, then reliability is improved, but loss of time increases

Engineering Contradiction:
ImprovereliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by maintaining the association between agents and their current record numbers in the middleware before failures occur. When an agent fails and reconnects, the middleware restores the previous association, allowing the agent to resume processing from where it left off rather than restarting from the beginning. This eliminates redundant processing and time loss while ensuring reliable recovery.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If complex programming is used to retrieve raw data from engineering systems, then manufacturing precision is improved, but device complexity increases

Engineering Contradiction:
Improvedata accuracyVSAvoidprogramming complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The middleware application serves as an intermediary that handles the complex data retrieval and formatting operations. Instead of requiring complex programming in each agent to retrieve and format raw data from engineering systems, the middleware centralizes these operations. The agent simply requests data through the middleware, which manages the complex interactions with engineering systems, thereby maintaining data accuracy while reducing programming complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7509650B2Enhance browsing of messages in a message queue
Publication Date: 2009.03.24 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7509650B2 patent drawing
  • US7509650B2 patent drawing
  • US7509650B2 patent drawing

AI summary

Methods to enhance browsing of messages in a message queue are disclosed. Embodiments include hardware and/or software for tracking records browsed by one or more agents. The agents can be processes designed to collect, process, and/or reformat data for an upperware application, a data warehouse, and/or similar arrangements. When agents set up communications with a queue, the agents may include an attribute setting that instructs the middleware to track the last record browsed and/or the next record to browse. In response to setting the attribute, some embodiments record the current record number, row number, queue identifier, and/or the like in a database with an agent identification (ID). Then, whenever an agent re-establishes communication with the middleware queue using the same ID, the middleware can retrieve the current record number.