AMQP Broker Queue Binding for Distributed App Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Testing asynchronous distributed applications is complex due to clock rate differences and varied hardware and software configurations across computer nodes, making it difficult to ensure successful execution and foresee failure conditions.

Innovation Solution

An information handling system and method that utilize an advanced message queuing protocol (AMQP) message broker to generate a queue with a test context-specific binding key, enabling the detection and routing of responsive events and state changes across distributed application nodes, facilitating the execution of automation test code and API calls for comprehensive testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If automation test code is executed across multiple distributed application nodes with different hardware and software configurations, then testing coverage and reliability are improved, but system complexity and difficulty of testing increase exponentially

Engineering Contradiction:
Improvetesting reliabilityVSAvoidtesting system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an AMQP message broker as an intermediary component that standardizes communication between test automation code and distributed application nodes. The broker receives test requests, routes them to appropriate nodes, and collects responses, thereby simplifying the testing architecture and reducing the exponential complexity that would otherwise arise from direct peer-to-peer communication across heterogeneous nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The testing system is segmented into distinct functional components: test automation code, AMQP message broker, distributed application nodes, and event subscription mechanisms. This segmentation allows each component to be independently configured, managed, and scaled, reducing overall system complexity while maintaining comprehensive testing coverage across heterogeneous nodes.

Inventive Principle:
Principle #1Segmentation

2Difficulty of detecting and measuring

If message routing and event detection mechanisms are implemented across distributed nodes, then responsive event detection capability is improved, but device complexity and configuration difficulty increase

Engineering Contradiction:
Improveevent detection capabilityVSAvoidmessage routing complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The AMQP message broker serves multiple functions simultaneously: it acts as a message router, event subscription manager, test request dispatcher, and response collector. This multi-functionality reduces the need for separate specialized components, thereby simplifying the overall architecture while improving event detection capability across distributed nodes.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system uses configurable parameters such as routing keys, exchange names, and queue bindings that can be dynamically adjusted without changing the underlying architecture. This allows flexible event detection and message routing across heterogeneous nodes while maintaining a consistent, manageable system structure.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If comprehensive testing across varied hardware and software configurations is performed, then testing thoroughness is improved, but time required for test execution and setup increases

Engineering Contradiction:
Improvetesting thoroughnessVSAvoidtest execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary setup of AMQP exchanges, queues, and bindings before test execution begins. Test configurations, including node mappings and event subscriptions, are pre-established so that actual test execution can proceed efficiently without repeated setup overhead, thereby reducing total test time while maintaining comprehensive coverage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The AMQP message broker maintains continuous operation throughout test execution, allowing test requests to be dispatched and responses to be collected in an uninterrupted flow. This continuous operation eliminates idle time between test steps and enables parallel execution across multiple nodes, reducing overall test execution time while maintaining thoroughness.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10630399B2Testing distributed applications that have an established exchange in an advanced message queuing protocol (AMQP) message broker
Publication Date: 2020.04.21 DELL PROD LP
  • US10630399B2 patent drawing
  • US10630399B2 patent drawing
  • US10630399B2 patent drawing

AI summary

A method for testing a distributed application. The method includes receiving the automation test code and initiating execution of the automation test code. A responsive event provided by at least one distributed application node, in response to execution of the automation test code is detected. One or more messages having a specified routing key are received as the responsive event. A queue for receiving the one or more messages generated on an advanced message queuing protocol message broker. A test context specific binding key having a known entity identifier and the specified routing key is selectively generated to form a bind between the queue and an established exchange. The one or more messages having a payload that selectively indicates the nature of the state change associated with the predetermined distributed event type are received at the queue. The one or more messages are selectively provided to a requesting device having access to the queue.