Transactional Middleware Message Queue Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Transactional middleware systems face performance bottlenecks in message transfer due to reliance on Inter-process Communication (IPC) protocols, which can lead to single-point bottlenecks and inefficiencies, especially in high-performance environments with multiple processors and networks.

Innovation Solution

Implementing a transactional middleware system that supports both Remote Direct Memory Access (RDMA) and IPC message queues, utilizing an advertised table with separate queue tables to enable clients to locate transactional services efficiently, and leveraging high-performance hardware like 64-bit processors and InfiniBand networks for scalable and reliable message transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If IPC message queues are used for transactional middleware, then compatibility and ease of operation are maintained, but message transfer performance and speed deteriorate due to single-point bottlenecks

Engineering Contradiction:
Improveease of operationVSAvoidmessage transfer speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent segments the message queue system into two distinct pathways: traditional IPC message queues for compatibility and RDMA message queues for high performance. This segmentation allows different communication protocols to coexist, with clients able to select the appropriate queue type based on performance requirements while maintaining ease of operation through unified interface support.

Inventive Principle:
Principle #1Segmentation

2Productivity

If RDMA message queues are implemented for high performance, then message transfer speed and productivity improve, but device complexity and system configuration difficulty increase

Engineering Contradiction:
Improvemessage transfer throughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer consisting of queue tables and address resolution mechanisms that mediate between the simplified client interface and the complex RDMA infrastructure. Clients interact with standard queue names through the advertised table, while the system automatically handles RDMA address resolution and queue table management, shielding users from complexity while enabling high performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If a single message queue system is used, then device complexity is low, but adaptability to different performance requirements deteriorates

Engineering Contradiction:
ImproveadaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal message queue system that supports multiple queue types (IPC and RDMA) through a unified interface. The advertised table structure and queue name resolution mechanism provide multi-functionality, allowing the same client code to operate across different queue types while the system adapts to performance requirements by selecting appropriate queue implementations.

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

Data Source

PatentEP2761822B1System and method for supporting different message queues in a transactional middleware machine environment
Publication Date: 2020.03.11 ORACLE INT CORP
  • EP2761822B1 patent drawingFigure 1
  • EP2761822B1 patent drawingFigure 2
  • EP2761822B1 patent drawingFigure 3~4

AI summary

A system and method can support different message queues in a transactional middleware machine environment. The transactional middleware machine environment includes an advertized table that comprises a first queue table and a second queue table, with the first queue table storing address information for a first message queue and the second queue table storing address information for a second message queue. The advertized table is further adaptive to be used by a first transactional client to locate a transactional service provided by a transactional server. The first transactional client operates to look up the first queue table for a key that indicates the address information of the transactional service that is stored in the second queue table.