System and method for supporting asynchronous message processing in a distributed data grid
First Claim
Patent Images
1. A method comprising:
- providing a node in a distributed data grid having a plurality of nodes, wherein said node comprises a first message processing thread, and a service thread having an associated service queue;
receiving an incoming message at said service thread;
preprocessing the incoming message in said service thread and generating a continuation data structure, wherein said continuation data structure represents a control state of a computational process on said service thread which allows said computational process to resume execution at a later point in time on said first message processing thread;
transmitting a request to process the incoming message from said service thread to said first message processing thread, wherein the request is transmitted with the continuation data structure;
processing the incoming message in said first message processing thread using said continuation data structure;
generating a return message in said first message processing thread;
wrapping, via said first message processing thread, the continuation data structure in said return message; and
sending said return message and said continuation data structure from said first message processing thread to said service queue.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method can support asynchronous message processing in a distributed data grid. A cluster node in the distributed data grid can provide a message processor running on a message processing thread. The message processor can receive a request to process an incoming message from a service thread, wherein the request is associated with a continuation data structure. Then, the message processor can wrap the continuation data structure in a return message after processing the incoming message, and forward the return message to a service queue that is associated with the service thread.
-
Citations
20 Claims
-
1. A method comprising:
-
providing a node in a distributed data grid having a plurality of nodes, wherein said node comprises a first message processing thread, and a service thread having an associated service queue; receiving an incoming message at said service thread; preprocessing the incoming message in said service thread and generating a continuation data structure, wherein said continuation data structure represents a control state of a computational process on said service thread which allows said computational process to resume execution at a later point in time on said first message processing thread; transmitting a request to process the incoming message from said service thread to said first message processing thread, wherein the request is transmitted with the continuation data structure; processing the incoming message in said first message processing thread using said continuation data structure; generating a return message in said first message processing thread; wrapping, via said first message processing thread, the continuation data structure in said return message; and sending said return message and said continuation data structure from said first message processing thread to said service queue. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
one or more microprocessors; a node in a distributed data grid having a plurality of nodes, wherein said node runs on said one or more microprocessors and comprises a first message processing thread, and a service thread having an associated service queue; wherein said node is configured to; receive an incoming message at said service thread, reprocess the incoming message in said service thread and generate a continuation data structure, wherein said continuation data structure represents a control state of a computational process on said service thread which allows said computational process to resume execution at a later point in time on said first message processing thread, transmit a request to process the incoming message from said service thread to said first message processing thread, wherein the request is transmitted with the continuation data structure, process the incoming message in said first message processing thread using said continuation data structure, generate a return message in said first message processing thread, wrap the continuation data structure in said return message in said first message processing thread, and send said return message and said continuation data structure from said first message processing thread to said service queue. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory machine readable storage medium having instructions stored thereon that when executed cause a system to perform steps comprising:
-
providing a node in a distributed data grid having a plurality of nodes, wherein said node comprises a first message processing thread, a service thread having an associated service queue; receiving an incoming message at said service thread; preprocessing the incoming message in said service thread and generating a continuation data structure, wherein said continuation data structure represents a control state of a computational process on said service thread which allows said computational process to resume execution at a later point in time on said first message processing thread; transmitting a request to process the incoming message from said service thread to said first message processing thread, wherein the request is transmitted with the continuation data structure; processing the incoming message in said first message processing thread using said continuation data structure; generating a return message in said first message processing thread; wrapping, via said first message processing thread, the continuation data structure in said return message; and sending said return message and said continuation data structure from said first message processing thread to said service queue. - View Dependent Claims (19, 20)
-
Specification