System, method, and computer readable medium for processing a message queue
First Claim
Patent Images
1. A computer-implemented method for processing a message queue, comprising:
- processing messages in the message queue in a serial manner, wherein a message structure is defined in service descriptions by a message description language and processing a message comprises processing the message structure;
suspending processing of at least a further message that is not in the message queue when the processing of the further message is blocked, the further message having a thread of execution, the further message having been previously removed from the message queue;
processing one or more next messages in the message queue during suspension of the further message;
responsive to the processing of the further message becoming unblocked, placing the further message back in the message queue; and
resuming processing of the further message.
3 Assignments
0 Petitions
Accused Products
Abstract
A method, system, and computer readable medium for processing a message queue comprises processing messages in the queue in a serial manner, suspending a message, when the processing is blocked for the message, processing a next message in the queue during the suspension, continuing the processing of the messages until the processing is unblocked, placing the message back in the queue, and processing the message.
-
Citations
34 Claims
-
1. A computer-implemented method for processing a message queue, comprising:
-
processing messages in the message queue in a serial manner, wherein a message structure is defined in service descriptions by a message description language and processing a message comprises processing the message structure; suspending processing of at least a further message that is not in the message queue when the processing of the further message is blocked, the further message having a thread of execution, the further message having been previously removed from the message queue; processing one or more next messages in the message queue during suspension of the further message; responsive to the processing of the further message becoming unblocked, placing the further message back in the message queue; and resuming processing of the further message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An article of manufacture including a non-transitory computer-readable medium having instructions stored thereon that, in response to execution by a computing device, cause the computing device to implement a system comprising:
-
a plurality of message queues; a plurality of autonomous computer agents, wherein at least one of the autonomous computer agents contains one of the message queues, wherein the autonomous computer agents are configured to send self-contained messages to each other from their respective message queues; wherein the autonomous computer agents are configured to process the self-contained messages serially, wherein a self-contained message structure is defined in service descriptions by a message description language and to process a self-contained message comprises processing the self-contained message structure; wherein the autonomous computer agents are configured to suspend processing of at least one of the self-contained messages when processing of the at least one self-contained message is blocked and until an inner send is completed, the at least one self-contained message having a thread of execution, the inner send being a send of a message that originates from within the thread of execution; and wherein at least one of the autonomous computer agents is configured to place, once the inner send is completed, the at least one self-contained message back on to one of the message queues for later processing, the self-contained message having been previously removed from the one of the message queues. - View Dependent Claims (12, 13)
-
-
14. A tangible non-transitory computer-readable medium having stored thereon, computer-executable instructions that, in response to execution by a computing device, cause the computing device to perform operations comprising:
-
suspending processing of at least one message when processing of the message is blocked, the message having a thread of execution, the message having been previously removed from a queue, wherein a message structure is defined in service descriptions by a message description language and processing a message comprises processing the message structure; processing one or more next messages in the queue during suspension of the message; placing the message that was blocked back in the queue when the processing of the message becomes unblocked; and resuming processing of the message that was blocked when the message is reached in the queue. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer-implemented method for processing a message queue, comprising:
-
processing messages in the message queue, wherein a message structure is defined in service descriptions by a message description language and processing a message comprises processing the message structure; suspending processing of at least a further message that is not in the message queue when the processing of the further message is blocked, the further message having a thread of execution, the further message having been previously removed from the message queue; processing one or more next messages in the message queue during suspension of the further message; responsive to the processing of the further message becoming unblocked, wrapping the further message in another message intended for special processing and placing the further message back in the message queue; and resuming processing of the further message. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. An article of manufacture including a non-transitory computer-readable medium having instructions stored thereon that, in response to execution by a computing device, cause the computing device to implement a system comprising:
-
a plurality of message queues; a plurality of autonomous computer agents, wherein at least one of the autonomous computer agents contains one of the message queues, wherein the autonomous computer agents are configured to; send self-contained messages to each other from each of their respective message queues; process the self-contained messages, wherein a self-contained message structure is defined in service descriptions by a message description language and to process a self-contained message comprises processing the self-contained message structure; suspend processing of at least one of the self-contained messages when processing of the at least one self-contained message is blocked and until an inner send is completed, the at least one self-contained message having a thread of execution, the inner send being a send of a message that originates from within the thread of execution; wrap the at least one self-contained message that was blocked in another message that is intended for special processing after the inner send is completed; and place the at least one self-contained message back on to one of the message queues for later processing after wrapping the at least one self-contained message, the at least one self-contained message having been previously removed from the one of the message queues. - View Dependent Claims (29, 30)
-
-
31. A tangible non-transitory computer-readable medium having stored thereon, computer-executable instructions that, in response to execution by a computing device, cause the computing device to perform operations comprising:
-
suspending processing of at least one message when processing of the message is blocked, the message having a thread of execution, the message having been previously removed from the queue, wherein a message structure is defined in service descriptions by a message description language and processing a message comprises processing the message structure; processing one or more next messages in the queue during suspension of the message; wrapping the message that was blocked in another message intended for special processing when the processing of the message becomes unblocked, wherein the message intended for special processing releases the thread of execution of the message; placing the message that was blocked back in the queue after the message is wrapped; and processing the message that was blocked when the message is reached in the queue. - View Dependent Claims (32, 33, 34)
-
Specification