×

Method for managing proposals in a distributed computing system

  • US 10,481,956 B2
  • Filed: 02/13/2008
  • Issued: 11/19/2019
  • Est. Priority Date: 01/12/2005
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method, comprising:

  • receiving, at a first replicator comprising a first replicated state machine, a first proposal to update a first replicated repository associated with the first replicated state machine from a first application node of a plurality of peer application nodes coupled to a computer network, the first application node running on a first computing device coupled to the network;

    receiving, at a second replicator comprising a second replicated state machine, a second proposal to update a second replicated repository associated with the second replicated state machine from a second application node of the plurality of peer application nodes coupled to the computer network, the second application node running on a second computing device coupled to the network;

    propagating the first proposal from the first replicator to the second replicator and propagating the second proposal from the second replicator to the first replicator such that both the first and second replicators coordinate to maintain at least the first and second replicated repositories in sync with each other in a real-time manner;

    enabling concurrent agreements to be reached on at least the first and second proposals received from at least the first and the second application nodes, each of the peer application nodes being configured to serve as a proposal proposer or a proposal acceptor at any given point in time, wherein the first and second replicated state machines are configured to enable the first replicated state machine to reach agreement on the first proposal concurrently with the second replicated state machine reaching agreement on the second proposal;

    precluding repeated preemptions of rounds in attempting to reach agreement on the proposals;

    storing in each of the plurality of peer applications nodes coupled to the computer network, using a persistent storage device, a local copy of an ordered global sequence of proposals that includes the first and second proposals, such that the local copy of the ordered global sequence of proposals stored in the persistent storage devices of all peer application nodes in the computer network is maintained to be identical;

    periodically, by each peer application node, reclaiming memory space on the respective persistent storage device by a periodic exchange of messages among the other peer application nodes, the exchanged messages providing an indication of those proposals that are determined by the first and second replicated state machines as being no longer required by any of the peer application nodes and that may be deleted from at least the local copy of the ordered global sequence of proposals.

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