Expand description
Augrim
Augrim is a collection of reusable consensus algorithms.
Using Augrim’s Algorithms
To use an algorithm, your application will commonly need to do two primary things:
- Input
Events
into theAlgorithm::event
method. - Process the list of
Actions
returned by theAlgorithm::event
method.
The specific actions and events differ by algorithm; refer to the algorithm’s documentation.
Modules
- Common set of basic errors used throughout the library.
- An implementation of the 2PC (Two-Phase Commit) atomic commitment protocol.
Structs
- An algorithm that wraps an algorithm of another type.
- An implementation of
TimeSource
which works withSystemTime
.
Traits
- A consensus algorithm.
- A message sent between processes.
- An identifier for an entity participating in consensus.
- A specific instant in time.
- A factory for getting the current time.
- A value to be agreed upon between processes.