×

Method for guaranteeing processing of messages in a continuous processing system

  • US 7,818,757 B1
  • Filed: 07/17/2006
  • Issued: 10/19/2010
  • Est. Priority Date: 07/18/2005
  • Status: Active Grant
First Claim
Patent Images

1. A method for ensuring that messages in a distributed, continuous processing system are processed in their entirety, even in the event of a system failure, the method comprising:

  • pushing messages through a set of connected primitives that process the messages in accordance with an execution plan, where the primitives are distributed across a plurality of servers and where the messages are pushed through in accordance with protocol that does not permit unprocessed messages to be permanently lost and that enables messages to be identified uniquely over a connection,wherein at least one primitive is associated with an input queue and an output queue, each input queue receiving an inbound message and transferring the inbound message to said at least one primitive, and each output queue;

    sending an outbound message to either a different primitive or a system output, andbuffering the outbound message in the output queue associated with the at least one primitive until the sending of the outbound message is fully completed; and

    for each primitive having a state, updating the state of the primitive after fully processing each received message;

    for each primitive, saving in persistent storage, at select checkpoints, any input message queue, output message queue, and state associated with such primitive; and

    if a failure occurs on a server in the system, restoring each primitive on such server to the input message queue, output message queue, and state, if any, saved for the primitive at the last applicable checkpoint for the primitive, where the primitive continues processing starting from such checkpoint.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×