Scalable Message Bus for Distributed Data Grid Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern distributed computing systems face an input/output (I/O) bottleneck due to communication mechanisms, limiting performance and efficiency in handling high demand from millions of users and transactions, especially in scale-out architectures.

Innovation Solution

A scalable message bus system is implemented in a distributed data grid, providing each service with its own message bus and utilizing a datagram layer for clustering, while allowing message buses to bypass the datagram layer for data transfer, using a pluggable provider and protocols like RDMA or UDP, and triggering death detection for failed message buses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single communication mechanism is used to connect all system components, then the system structure is simple, but the I/O bottleneck limits performance and efficiency

Engineering Contradiction:
Improvesystem structureVSAvoidperformance and efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the single communication mechanism into multiple message buses, where each service has its own dedicated message bus. This segmentation eliminates the I/O bottleneck by allowing parallel communication channels while maintaining manageable system structure through modular organization of services and their corresponding buses.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple message buses are provided for each service, then the I/O bottleneck is relieved and throughput increases, but the device complexity increases

Engineering Contradiction:
ImprovethroughputVSAvoidnumber of message buses
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by providing each service with its own dedicated message bus rather than a shared communication mechanism. This localized approach optimizes performance for each service individually while the overall system complexity is managed through the systematic organization of services and their private buses, allowing parallel operations without global coordination overhead.

Inventive Principle:
Principle #3Local quality

3Reliability

If the datagram layer is used for all data transfers, then clustering is supported, but the I/O bottleneck persists and latency increases

Engineering Contradiction:
Improveclustering supportVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the datagram layer from the data transfer path while retaining it for clustering functions. By removing the datagram layer from the critical data transfer route between services, the system achieves lower latency and higher throughput, while clustering functionality is maintained through alternative mechanisms that do not bottleneck the data transfer path.

Inventive Principle:
Principle #2Taking out (Extraction)

4Adaptability or versatility

If message buses are designed to be pluggable with multiple protocol support, then adaptability increases, but the device complexity increases

Engineering Contradiction:
Improveprotocol supportVSAvoidmessage bus provider structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements universality by designing the message bus provider to support multiple bus protocols through a unified pluggable interface. This allows the same message bus infrastructure to adapt to different communication protocols (such as RDMA, TCP/IP, or custom protocols) without requiring separate dedicated buses for each protocol, thereby achieving protocol versatility while controlling system complexity through standardized interfaces and modular provider implementations.

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

Data Source

PatentEP2893689B1System and method for supporting a scalable message bus in a distributed data grid cluster
Publication Date: 2019.03.13 ORACLE INT CORP
  • EP2893689B1 patent drawingFigure 1
  • EP2893689B1 patent drawingFigure 2
  • EP2893689B1 patent drawingFigure 3

AI summary

A system and method can provide a scalable message bus in a distributed data grid. The system can provide a plurality of message buses in the distributed data grid, wherein the distributed data grid includes a plurality of cluster members and provides a plurality of services. Furthermore, the system can associate each said service in the distributed data grid with a said message bus, and use the plurality of message buses to support data transferring between different services on different cluster members in the distributed data grid. Additionally, the system can use a datagram layer to support clustering in the distributed data grid, and bypass the datagram layer in the distributed data grid for data transferring.