Message Exchange Filtering in Queuing Services
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed computing architectures, message queuing services often deliver all messages generated by a publisher to consumers, resulting in irrelevant messages being received by message consumers, leading to inefficiencies and unnecessary data processing.
Innovation Solution
Implementing a message queuing service with exchange filter rules that allow message consumers to subscribe to specific message exchanges and define rules for delivering only relevant messages to their destination queues, based on message attributes, thereby filtering out irrelevant messages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If message queuing service delivers all messages to consumers, then message delivery completeness is improved, but data processing efficiency deteriorates due to irrelevant messages
Solution Approach 1:
The patent applies preliminary action by evaluating message attributes against filter rules before delivering messages to consumers. The message queuing service pre-assesses whether a message matches any consumer's subscription criteria using exchange filter rules that evaluate message attributes, and only delivers messages that satisfy at least one filter rule. This preliminary filtering action prevents irrelevant messages from reaching consumers, thereby maintaining delivery completeness for relevant messages while eliminating waste of processing resources on irrelevant ones.
2Productivity
If message queuing service filters messages using exchange filter rules, then data processing efficiency is improved, but device complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the message filtering function into separate, modular exchange filter rules that can be independently configured and evaluated. Each filter rule operates as an independent evaluation unit that checks specific message attributes against predefined criteria. This segmentation allows the filtering system to process messages through discrete, manageable rule evaluations rather than a monolithic complex system, making the filtering mechanism more maintainable and easier to configure while achieving efficient message filtering.
3Loss of information
If message consumers receive all messages from publishers, then information completeness is improved, but loss of time increases due to processing irrelevant messages
Solution Approach 1:
The patent applies the taking out principle by extracting and evaluating specific message attributes against filter rules before message delivery. The message queuing service extracts relevant attributes from incoming messages and evaluates them against the subscription criteria defined in exchange filter rules. Only messages that satisfy at least one filter rule are delivered to consumers. This extraction and evaluation process ensures that consumers receive complete information for all relevant messages while eliminating time waste from processing irrelevant messages that do not match any filter rule.
Data Source
AI summary
A technology is described for a message queuing service. An example method may include obtaining a message having message attributes from a shared queue that contains messages intended for destination queues and analyzing the message attributes for the message to identify a message exchange associated with the message, where the message exchange has destination queues subscribed to the message exchange that receive messages via the message exchange. An exchange filter rule for the message exchange may then be identified and used to identify subscribed destination queues linked to the exchange filter rule. The message attributes of the message may then be analyzed to determine whether the value of the message attributes satisfy the exchange filter rule, and the message may be distributed to the subscribed destination queues as a result of the value of the message attribute satisfying the exchange filter rule.


