Message Ownership Migration in Distributed Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional message queuing systems face challenges with replication across multiple nodes, leading to issues with high availability, message ordering, duplicate delivery, and distributed computing burdens, particularly in publisher-subscriber systems where subscribers must subscribe to multiple nodes and active-passive replication approaches result in wasted resources and complications.

Innovation Solution

A system that replicates messages across multiple nodes by designating ownership and using a replication path to manage message delivery, ensuring only one subscriber receives each message, with nodes requesting ownership based on average acknowledgement times and maintaining first-in, first-out ordering through message ownership migration and notification processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If messages are replicated across multiple nodes in conventional publisher-subscriber systems, then high availability is improved, but device complexity and distributed computing burdens worsen

Engineering Contradiction:
Improvehigh availabilityVSAvoiddistributed computing burdens
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments message ownership by assigning each message to a single owner node, while other nodes hold replicas. This segmentation resolves the contradiction by distributing message storage across nodes (improving availability) while clearly defining ownership boundaries (reducing complexity in managing replicated messages).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an ownership migration mechanism that acts as an intermediary protocol between nodes. When a subscriber needs a message from a non-owner node, the system mediates ownership transfer through standardized messages (MigrateMessageRequest, MigrateMessageAction), reducing distributed computing burdens by providing a clear coordination protocol.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If subscribers subscribe to multiple nodes to ensure message receipt, then reliability is improved, but device complexity worsens

Engineering Contradiction:
Improvemessage delivery guaranteeVSAvoidsubscription management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system enables self-service message delivery where the message owner node automatically delivers messages to its subscribers. Subscribers only need to subscribe to one node (the owner), and the owner node self-manages delivery. This eliminates the need for subscribers to monitor multiple nodes, reducing subscription management complexity while ensuring reliable delivery.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-assigning message ownership to specific nodes before delivery. This allows subscribers to subscribe to a single known owner node, eliminating the need for complex multi-node subscription management while guaranteeing message receipt through the owner's responsible delivery.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If active-passive replication is used, then high availability is improved, but resource utilization worsens due to wasted resources

Engineering Contradiction:
ImproveavailabilityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements dynamic ownership migration where message ownership can transfer between nodes based on delivery needs. Instead of static active-passive roles, any node can become the owner by receiving a MigrateMessageRequest. This dynamic approach ensures messages are always delivered by an active owner while allowing passive nodes to become active when needed, optimizing resource utilization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the state parameter of message ownership from static (active-passive) to dynamic (migratable). By allowing the owner node identifier to change based on delivery requirements, the system eliminates wasted resources in active-passive setups where passive nodes remain idle, while maintaining high availability through flexible ownership transfer.

Inventive Principle:
Principle #35Parameter changes

4Loss of energy

If message ownership migration is implemented, then resource utilization is improved, but device complexity worsens due to additional messaging protocols

Engineering Contradiction:
Improveresource optimizationVSAvoidmessaging protocols
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The ownership migration mechanism serves multiple functions: it optimizes resource utilization by enabling dynamic ownership transfer, ensures message delivery by identifying responsible owners, and provides failover capability. The same MigrateMessageRequest/Action protocol handles all ownership transfers system-wide, reducing complexity through universal application rather than node-specific implementations.

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

Data Source

PatentUS9853933B2Message queue replication with message ownership migration
Publication Date: 2017.12.26 60EAST TECH
  • US9853933B2 patent drawing
  • US9853933B2 patent drawing
  • US9853933B2 patent drawing

AI summary

The method including receiving, at a first node of a plurality of computing nodes, a message ownership migration request for a first message. The message ownership migration request can originate from a second node of the plurality of computing nodes. The first node can be an owner of the first message in a first instance of a message queue at the first node. The first message can be published from a first publisher to the message queue at one of the nodes of the plurality of computing nodes. The first message in the first instance of the message queue at the first node can be replicated at a second instance of the message queue at the second node. A first subscriber can be subscribed to the second instance of the message queue at the second node. The method also can include designating the second node as a new owner of the first message such that the first node is no longer the owner of the first message. The method further can include sending a message ownership migration notification for the first message from the first node to each of the other nodes of the plurality of computing nodes. The message ownership migration notification can identify the second node as the new owner of the first message. Other embodiments are provided.