Duplicate Message Filtering in Multi-Region Active-Active Architecture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a multi-region multi-active architecture, client applications may receive duplicate messages from multiple active regions, leading to malfunctions and incorrect processing, such as double payment in a payment service provider scenario.
Innovation Solution
Region information and client account information are added to messages produced by region servers, enabling region-specific consumer groups and message filters to ensure that messages are consumed only from the correct region and account, thus preventing duplicates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple region servers are active simultaneously in a multi-region architecture, then system availability and fault tolerance are improved, but duplicate messages are generated and delivered to client applications
Solution Approach 1:
The patent segments the message consumption responsibility by introducing region-specific consumer groups that are dedicated to consuming messages from specific regions. Each consumer group is assigned to a particular region and only consumes messages produced by region servers in that region, thereby preventing duplicate message consumption while maintaining multi-region active architecture for high availability
Solution Approach 2:
The patent introduces an intermediary filtering mechanism that examines message headers containing region information and consumer group identifiers. This intermediary layer filters out duplicate messages by verifying whether the consumer group is authorized to consume messages from the producing region, thus resolving the duplicate message issue without sacrificing system availability
2Object-generated harmful factors
If region-specific consumer groups and message filters are implemented, then duplicate message consumption is prevented, but message processing complexity increases
Solution Approach 1:
The patent performs preliminary actions by embedding region information and consumer group identifiers in message headers during message production. This pre-tagging approach enables efficient filtering without requiring complex real-time analysis, as the filtering mechanism simply needs to match the pre-defined region and consumer group identifiers, thereby reducing processing complexity
Solution Approach 2:
The patent changes the parameter space by introducing structured message headers with specific fields for region information and consumer group identifiers. This parameterization transforms the filtering problem into a simple key-matching operation, significantly reducing the complexity of duplicate message detection compared to analyzing entire message contents
Data Source
AI summary
Systems and methods of message filtering in a multi-region multi-active architecture are provided. A client device receives a data message, the data message comprising a region tag and an account tag. The client device determines whether the region tag corresponds to a region server assigned to serve the client device. In response to determining the region tag corresponds to the region server assigned to serve the client device, the client device determines whether an account identification (ID) associated with the client device matches the account tag of the data message. In response to determining the account ID matches the account tag, the client device consumes the data message.


