Gateway Server Message Queue Mirroring for Rapid Client Re-hosting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Message gateways in network systems face challenges in ensuring message delivery when a gateway server fails, leading to messages being 'stuck' due to network errors or unavailability, resulting in potential data loss.

Innovation Solution

Implementing a system where mirrored user message queues are maintained across multiple gateway servers, allowing for rapid re-hosting of client devices if a server fails, ensuring seamless message delivery by replicating messages across a sequence of servers and synchronizing queues upon server recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If messages are relayed through a sequence of gateway servers, then message delivery capability is improved, but the risk of messages being stuck due to server failure increases

Engineering Contradiction:
Improvemessage delivery capabilityVSAvoidmessage loss risk
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by pre-establishing mirrored message queues on multiple gateway servers before message relay is needed. When a server fails, the mirrored queues already contain the necessary messages, enabling immediate failover without data loss. This proactive replication resolves the contradiction by preparing redundancy in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements copying by creating mirrored copies of message queues across multiple gateway servers. These copies serve as backups that can immediately take over if the primary server fails, ensuring message delivery continuity and preventing message loss while maintaining reliable delivery capability.

Inventive Principle:
Principle #26Copying

2Reliability

If mirrored message queues are maintained across multiple servers, then failover capability is improved, but system complexity increases

Engineering Contradiction:
Improvefailover capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the message queue functionality across multiple gateway servers by implementing mirrored queues that share the same message data. This consolidation approach allows any server in the mirror set to serve as a fallback, improving failover capability while managing complexity through unified queue management rather than independent duplicate systems.

Inventive Principle:
Principle #5Merging (Combining)

3Loss of time

If rapid re-hosting is implemented upon server failure, then message delivery time is improved, but operational complexity increases

Engineering Contradiction:
Improvemessage delivery timeVSAvoidoperational complexity
Core Design Contradiction:
Loss of timeVSEase of operation

Solution Approach 1:

The system performs preliminary actions by pre-configuring mirrored message queues and establishing failover relationships before failures occur. This advance preparation enables rapid re-hosting when server failures happen, reducing message delivery time while the automated nature of the pre-configured mirrors minimizes operational complexity during actual failover events.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11729129B2Message quests for rapid re-hosting of client devices
Publication Date: 2023.08.15 SNAP INC
  • US11729129B2 patent drawing
  • US11729129B2 patent drawing
  • US11729129B2 patent drawing

AI summary

Connected gateway servers relay an electronic message from a first client device to a second client device by storing the message in respective user message queues associated with the sender and/or recipient of the message and then sending the message along a sequence of gateway servers to a gateway server that hosts the second client device. Upon receiving the electronic message at a first gateway server, a second gateway server that is hosting the second client device is identified and a sequence of gateway servers starting at the first gateway server and ending at the second gateway server is determined. Each gateway server in the sequence relays the message to the following gateway server in the sequence while maintaining user message queues. Failure of the last gateway server in the sequence results in the penultimate gateway server in the sequence assuming the responsibility of hosting the second client device.