Dynamic Message Queue Thresholds for Transitory Processing Failures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing messaging systems fail to effectively handle situations where consuming applications are unable to process messages due to either 'poison' messages or transitory problems, leading to inefficient handling of valid messages and increased administrative intervention.
Innovation Solution
A method and apparatus that dynamically manage message availability and consumer access to a queue by tracking retry and consecutive failure counts, moving problematic messages to a side queue or disabling consumer access based on predetermined thresholds, allowing for differentiated handling of message and application issues.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the messaging system automatically moves repeatedly failed messages to a dead letter queue, then the consuming application can process subsequent messages, but valid messages may be incorrectly moved during transitory application problems
Solution Approach 1:
The patent introduces a dynamic threshold mechanism that adjusts the failure count threshold based on the consuming application's operational state. The threshold is not fixed but can be modified to accommodate transitory problems versus persistent failures, allowing the system to adapt its behavior dynamically.
Solution Approach 2:
The system implements feedback by monitoring the outcome of message processing attempts and using this information to adjust the threshold. When applications experience transitory problems, the feedback mechanism allows temporary suspension of the threshold enforcement, preventing valid messages from being incorrectly moved to the dead letter queue.
2Reliability
If the consuming application is stopped when failure threshold is reached, then administrative intervention is required, but this causes delays in resolving transitory problems and prevents timely processing of valid messages
Solution Approach 1:
The patent makes the threshold dynamic rather than static. During transitory application problems, the threshold can be temporarily suspended or adjusted, allowing the system to continue operating without immediate administrative intervention. This dynamic adjustment reduces the loss of time while maintaining application stability.
Solution Approach 2:
The system takes preliminary action by monitoring failure patterns and proactively adjusting the threshold before administrative intervention becomes necessary. This allows transitory problems to be handled gracefully without requiring immediate administrator involvement, reducing response time.
3Manufacturing precision
If the threshold for moving messages to dead letter queue is set low, then poison messages are quickly isolated, but valid messages are incorrectly moved during temporary application failures
Solution Approach 1:
The patent introduces a dynamic threshold that adjusts based on the consuming application's operational context. During transitory problems, the threshold is temporarily raised or suspended, preventing premature classification of valid messages as poison messages. This dynamic approach improves classification precision without significantly increasing detection complexity.
Solution Approach 2:
The system changes the parameter of the failure count threshold based on operational conditions. By adjusting this critical parameter dynamically, the system can distinguish between temporary failures and persistent poison messages more accurately, improving message classification precision.
4Reliability
If the threshold for stopping applications is set low, then problematic applications are quickly identified, but this causes unnecessary stops during transitory database connection issues
Solution Approach 1:
The patent makes the application stopping threshold dynamic. During transitory database connection issues, the threshold is temporarily suspended or adjusted, allowing applications to continue operating without being stopped. This maintains ease of operation while preserving monitoring reliability through continued observation of failure patterns.
Solution Approach 2:
The system provides beforehand cushioning by introducing a buffer in the form of a dynamic threshold that can absorb temporary failures without triggering application stops. This cushioning mechanism protects application continuity during transitory problems while maintaining the ability to identify genuine issues.
Data Source
AI summary
Disclosed is a method for administering messages. In response to a determination that one or more consuming applications have failed to process the same message on a queue a predetermined number of times, the message is made unavailable to consuming applications. Responsive to determining that a predetermined number of messages have been made unavailable to consuming applications, one or more consuming applications are prevented from consuming messages from the queue.


