Methods, devices and systems for dynamically managing memberships in replicated state machines within a distributed computing environment
First Claim
Patent Images
1. A distributed computing system, comprising, comprising:
- a plurality of computing devices configured as state machines coupled to one another by a computer network, states of one of the plurality of state machines being replicated in a plurality of other state machines of the plurality of state machines to create a plurality of replicated state machines;
a plurality of processes associated with the plurality of replicated state machines; and
a first globally ordered set of agreements that is visible to and that maintains a consistency of all replicated state machines, the first globally ordered set of agreements being associated with the plurality of replicated state machines;
wherein, at an arbitrary point in a processing of the first globally ordered set of agreements, at least one of the plurality of processes changes and the plurality of replicated state machines become associated with the at least one changed process; and
wherein at least some of the plurality of processes associated with the plurality of replicated state machines change states while the change to the at least one of the plurality of processes is being made.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer-implemented method may comprise processing agreements received over a computer network at a first replicated state machine deployed on processes belonging to a first membership in an order defined by a first globally ordered set of agreements associated with the first membership; receiving an agreement to change membership that is configured to cause the first replicated state machine to be deployed on processes belonging to a second membership that is associated with a second globally ordered set of agreements; and processing the agreement to change membership at a point within the first globally ordered set of agreements.
101 Citations
27 Claims
-
1. A distributed computing system, comprising, comprising:
-
a plurality of computing devices configured as state machines coupled to one another by a computer network, states of one of the plurality of state machines being replicated in a plurality of other state machines of the plurality of state machines to create a plurality of replicated state machines; a plurality of processes associated with the plurality of replicated state machines; and a first globally ordered set of agreements that is visible to and that maintains a consistency of all replicated state machines, the first globally ordered set of agreements being associated with the plurality of replicated state machines; wherein, at an arbitrary point in a processing of the first globally ordered set of agreements, at least one of the plurality of processes changes and the plurality of replicated state machines become associated with the at least one changed process; and wherein at least some of the plurality of processes associated with the plurality of replicated state machines change states while the change to the at least one of the plurality of processes is being made. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A replicated state machine in a distributed computing system, comprising:
-
a processor; memory coupled to the processor, the processor being configured to execute sequences of instructions configured to; process agreements received over a computer network at a first replicated state machine deployed on processes belonging to a first membership in an order defined by a first globally ordered set of agreements associated with the first membership; receive an agreement to change membership that is configured to cause the first replicated state machine to be deployed on processes belonging to a second membership that is associated with a second globally ordered set of agreements; and process the agreement to change membership at a point within the first globally ordered set of agreements. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A replicated state machine in a distributed computing system comprising a plurality of replicated state machines coupled to one another over a computer network, the replicated state machine comprising:
-
a processor; and memory coupled to the processor, the processor being configured to execute sequences of instructions configured to; asynchronously receive out of order agreements from a distributed co-ordination engine; maintain at least a first membership comprising a first plurality of agreements comprising a first plurality of processes within a global sequence of agreements and a second membership comprising a second plurality of agreements comprising a second plurality of processes within the global sequence of agreements; and dynamically change membership from the first membership to the second membership. - View Dependent Claims (23, 24, 25, 26, 27)
-
Specification