Dual-Level Message Redelivery Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current publish/subscribe systems are inefficient in handling failed message redeliveries, especially when system resources are unavailable, leading to repeated failed attempts and increased operator burden during scheduled maintenance or resource outages.
Innovation Solution
Implementing a dual-level redelivery mechanism where messages are initially retried immediately (micro level) and then delayed for a user-selectable period (macro level) before being backed out for manual intervention, allowing system resources time to recover.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If immediate redelivery is attempted repeatedly when a message fails, then the message may be delivered successfully once resources become available, but system operators experience increased burden and manual intervention is required more frequently
Solution Approach 1:
The system performs preliminary actions by automatically detecting message delivery failures and initiating redelivery sequences before operator intervention is needed. The automated redelivery mechanism proactively handles failed messages by retrying delivery to subscribers, only involving operators when all automated retries are exhausted.
Solution Approach 2:
The system enables self-service by allowing the messaging system to automatically manage its own error recovery without requiring operator intervention. The automated redelivery mechanism monitors delivery status, identifies failures, and executes redelivery attempts independently, freeing operators from routine manual redelivery tasks.
2Reliability
If multiple redelivery attempts are made immediately, then message delivery reliability improves, but system resources may remain unavailable causing repeated failures and increased processing overhead
Solution Approach 1:
The system implements periodic action by introducing delayed redelivery intervals between retry attempts. Instead of continuous immediate retries, the system schedules redelivery attempts at periodic intervals, allowing system resources time to recover and reducing unnecessary processing overhead when resources remain unavailable.
Solution Approach 2:
The system applies dynamics by adapting the redelivery strategy based on current system conditions. The redelivery mechanism dynamically adjusts between immediate retries and delayed retries, and ultimately transitions to operator intervention when automated recovery is no longer effective, optimizing resource utilization throughout the process.
3Productivity
If automated redelivery is implemented without operator intervention options, then operational efficiency improves, but flexibility to handle complex failure scenarios is reduced
Solution Approach 1:
The system applies segmentation by dividing the redelivery process into distinct phases: automated immediate retries, automated delayed retries, and operator intervention. This segmented approach allows the system to handle routine failures automatically while preserving operator capability for complex scenarios, balancing efficiency and flexibility.
Solution Approach 2:
The system uses an intermediary approach by introducing operator intervention as a mediator between automated redelivery attempts and final message delivery. When automated mechanisms exhaust their retry options, the system transitions to operator-mediated handling, which can address complex failure scenarios requiring human judgment while maintaining automated efficiency for standard cases.
Data Source
AI summary
Method and system are disclosed for redelivering failed messages in asynchronous communication systems. The methods and systems automatically delay redelivery of such failed messages in order to allow required system resources to become available. In one implementation, the methods and systems provide two levels of redelivery: a micro level in which redelivery is attempted right away for a certain number of times, and a macro level in which a predefined, user-selectable delay is imposed before any additional micro level redeliveries are attempted. After a certain number of unsuccessful macro level redeliveries, the message is backed out to a backout queue for manual intervention by a system operator. Such an arrangement reduces or eliminates the burden on the system operator to manually resolve failed message deliveries.


