Message Server Subscription Filter Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current message server configurations face scalability issues when handling a large number of message sources and recipients, leading to inefficiencies in message delivery due to duplication, high network traffic, and performance bottlenecks, particularly when popular message sources have many subscribers.
Innovation Solution
Implementing a message server configuration that uses a single message server or a set of message servers to store recipient profiles and generate subscription filters, allowing messages to be efficiently routed only to subscribed recipients, with the option of using a bloom filter for space- and processing-efficient determinations, and assigning similar recipients to the same server to consolidate message delivery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a separate message queue is generated for each recipient, then message delivery to individual recipients is simplified, but the system consumes excessive storage resources and creates performance bottlenecks when message sources have large numbers of subscribers
Solution Approach 1:
The patent merges multiple recipient-specific message queues into a single shared message queue. Instead of creating separate queues for each recipient, all messages from message sources are stored in one common queue, and recipients subscribe to message sources rather than having dedicated queues. This eliminates the exponential growth of message copies while maintaining delivery functionality.
Solution Approach 2:
The single message queue serves multiple recipients simultaneously, making it a universal structure that handles message storage for all subscribers. The queue is not tied to any specific recipient but rather to message sources, allowing any number of recipients to access messages from any message source through the same queue infrastructure.
2Ease of operation
If a separate message queue is generated for each message source, then message routing from sources is simplified, but the system generates excessive network traffic and queries when message sources have many subscribers
Solution Approach 1:
The patent merges the routing function into a single message queue that handles all message sources. Instead of having separate queues that each generate network traffic when queried, one shared queue consolidates all message storage, and the routing is achieved through recipient subscriptions to message sources rather than through multiple queue access points.
3Reliability
If the message server stores copies of messages for each subscribing recipient, then message delivery to all recipients is ensured, but the system cannot scale when popular message sources have millions of subscribers
Solution Approach 1:
The patent merges the message storage function into a single shared queue that serves all recipients. Instead of creating millions of message copies for popular message sources, the system stores one copy of each message in the shared queue and uses a subscription model where recipients are linked to message sources through metadata, not through physical message copies. This maintains delivery reliability while enabling scalability to millions of subscribers.
Solution Approach 2:
The patent uses logical copying through subscription metadata rather than physical message copying. When a recipient subscribes to a message source, the system creates a logical link in the subscription database rather than duplicating the actual message content. This allows the same message to be delivered to multiple recipients without creating multiple physical copies in the queue.
4Loss of information
If the message server fields queries from each recipient for messages from each subscribed message source, then complete message retrieval is achieved, but the system experiences performance bottlenecks with high subscription volumes
Solution Approach 1:
The patent performs preliminary organization of messages and subscriptions in a shared queue structure before queries are executed. Messages are pre-sorted and indexed by message source in the single queue, and recipient subscriptions are pre-configured in metadata. When a recipient requests messages, the system efficiently retrieves them using the pre-established indexing and subscription links rather than executing multiple separate queries across multiple queues.
Data Source
AI summary
Many scenarios involve the delivery of messages received from various message sources to recipients, based on subscriptions established between various recipients and message sources. The recipients may be distributively assigned to one or more message servers, either operating independently or as part of an interoperating message server set. Respective message servers may generate a subscription filter indicating whether at least one assigned recipient subscribes to respective message sources, and may utilize the subscription filter to determine, upon receiving a message from a message source, whether to discard the message or store the message for delivery. Interoperating message servers may also exchange subscription filters, and upon receiving a message from any message source, a message server may utilize the subscription filters of the other message servers to determine which other message servers are assigned at least one subscribing recipient, and may retransmit the message only to such message servers.


