Cloud Messaging System with Persistent Websocket Connections

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cloud-based messaging systems lack fault tolerance, scalability, and bi-directional communication capabilities, leading to high latency and the inability to support various web standards without complex firewall or VPN configurations.

Innovation Solution

The system employs multiple messaging system instances with publish/subscribe channels and websocket connections for high-performance, high-availability, and scalability, enabling bi-directional communication and low latency without requiring special network configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional cloud-based messaging systems are used, then basic messaging functionality is provided, but the system lacks fault tolerance and scalability

Engineering Contradiction:
Improvefault toleranceVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The messaging system is divided into multiple independent messaging system instances, each capable of handling messages independently. This segmentation allows the system to maintain fault tolerance since failure of one instance does not affect others, while also improving scalability by allowing individual instances to be added or removed based on load requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A registry component is introduced as an intermediary that maintains mappings between on-premise connector endpoints and messaging system instances. This mediator enables dynamic message routing without requiring complex peer-to-peer configuration between components, simplifying the overall system architecture while enhancing reliability through centralized coordination.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If traditional messaging systems are used, then messaging functionality is provided, but bi-directional communication capabilities are lacking

Engineering Contradiction:
Improvebi-directional communicationVSAvoidcommunication protocol
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The messaging system instances are designed to handle both incoming and outgoing messages through a unified websocket connection framework. Each instance can simultaneously act as a client receiving messages from on-premise connectors and as a server sending messages to them, providing bi-directional communication capabilities without requiring separate communication channels or protocols.

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

3Speed

If traditional messaging systems are used, then basic communication is supported, but high latency occurs due to network overhead

Engineering Contradiction:
Improvemessage transmission speedVSAvoidnetwork overhead
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

Persistent websocket connections are established between messaging system instances and on-premise connectors, maintaining continuous open channels for communication. This eliminates the need for repeated connection handshakes and protocol negotiations for each message, significantly reducing network overhead and latency while improving message transmission speed.

Inventive Principle:
Principle #20Continuity of useful action

4Adaptability or versatility

If traditional messaging systems are used, then messaging functionality is provided, but the system cannot support various web standards without complex firewall or VPN configurations

Engineering Contradiction:
Improveweb standard supportVSAvoidnetwork configuration
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The messaging system uses standard websocket connections that operate over conventional HTTP/HTTPS ports, allowing the system to traverse firewalls and network configurations automatically without requiring special VPN setups or complex firewall rules. The websocket protocol itself handles the connection establishment and maintenance, making the system adaptable to various web standards and network environments.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3639153B1Real-time cloud-based messaging system
Publication Date: 2021.04.14 CITRIX SYSTEMS INC
  • EP3639153B1 patent drawingFigure 1A
  • EP3639153B1 patent drawingFigure 1B
  • EP3639153B1 patent drawingFigure 1C~1D

AI summary

Described embodiments may provide messages via websocket connections. A messaging system may maintain, on a first network, via the messaging system instances, a plurality of persistent websocket connections between each of a plurality of on-premise connectors and each messaging system instance. The messaging system may receive a message to be sent to an endpoint on a second network of an on-premise connector of the plurality of on-premise connectors. The messaging system may identify, via a registry associating on-premise connector endpoints to messaging instances, a messaging system instance of the plurality of messaging system instances via which to send the message to the endpoint. The messaging system instance may maintain the websocket connection to the on- premise connector in communication with the endpoint. The messaging system instance may transmit the message to the endpoint via the websocket connection to the on-premise connector.