Asynchronous Message Broker Bulk Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional asynchronous processing systems lack support for bulk handling and bulk dequeuing of messages, leading to inefficiencies in high-volume processing environments and failing to ensure consistency and availability across data stores.
Innovation Solution
Implementing a system that allows for bulk processing and dequeuing of messages by using a broker to enqueue and dequeue messages as a group, with a secondary store to maintain message state and ensure atomicity and availability, and utilizing push and pull connections to manage message processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional broker-based asynchronous processing is used to handle messages one at a time, then system simplicity is maintained, but processing efficiency and productivity deteriorate in high-volume environments
Solution Approach 1:
The patent merges multiple individual message handling operations into a single bulk processing operation. The broker receives and enqueues multiple messages as a group, and the processing system retrieves and processes multiple messages in a single transaction, combining what would otherwise be separate operations into one unified bulk operation, thereby improving throughput without proportionally increasing complexity
Solution Approach 2:
The system performs preliminary actions by pre-fetching multiple messages from the broker before processing begins. The processing system retrieves a batch of messages in advance, prepares them for processing, and then executes the bulk operation, allowing the system to pipeline operations and reduce idle time between processing cycles
2Productivity
If bulk processing is implemented without proper transactional support, then processing efficiency improves, but data consistency and reliability deteriorate
Solution Approach 1:
The patent introduces an intermediary processing layer that sits between the broker and the final processing logic. This intermediary implements transactional boundaries, ensuring that bulk operations are either fully committed or fully rolled back. The intermediary manages the transaction context, coordinates the bulk processing, and ensures that consistency is maintained across the entire batch operation
Solution Approach 2:
The system implements beforehand cushioning by establishing transactional safeguards and error handling mechanisms before bulk processing begins. Checkpoints and validation logic are prepared in advance, allowing the system to detect and recover from errors without compromising the entire batch, thereby protecting reliability while maintaining high processing speeds
3Reliability
If individual message dequeuing is used to ensure transactionality, then data consistency is maintained, but processing overhead increases and productivity decreases
Solution Approach 1:
The patent combines multiple individual dequeue operations into a single bulk dequeue operation. Instead of retrieving and processing messages one at a time with separate transactional boundaries, the system retrieves multiple messages in a single operation with a single transactional context, eliminating the repetitive overhead of individual operations while maintaining transactional integrity across the entire batch
Solution Approach 2:
The system enables continuity of useful action by maintaining a sustained bulk processing flow. Once a bulk operation is initiated, the system continues processing through the entire batch without interruption or repeated setup overhead, keeping the processing pipeline full and eliminating idle periods between individual message operations
4Productivity
If conventional message queue brokers are used without bulk handling support, then ease of operation is maintained, but processing efficiency and time utilization deteriorate
Solution Approach 1:
The patent enhances the broker's functionality to include bulk operations while maintaining backward compatibility with individual message operations. The broker implements a universal interface that supports both traditional single-message enqueue/dequeue operations and new bulk operations, allowing the same system to handle different workloads appropriately without requiring separate systems or complex configuration
Data Source
AI summary
Systems and methods for implementing bulk handling in asynchronous processing are described. For example, an exemplary system includes a processor and a memory to execute instructions at the system; a broker to enqueue received messages; a push connection from the broker to a thread, in which the broker is to push an initial message to the thread for processing; a pull connection from the thread to the broker, in which the thread is to request one or more additional messages for bulk processing with the initial message from the broker; a query interface to issue a database query from the thread to a data store, the database query specifying the initial message and the one or more additional messages as a set of messages to obtain a lock for the set of messages; and a message processing engine to handle the set of messages in bulk based on whether the lock for the set of messages is obtained.


