overlord

Crates.iooverlord
lib.rsoverlord
version0.4.2
sourcesrc
created_at2019-10-30 10:07:50.708538
updated_at2022-07-11 09:59:01.338122
descriptionOverlord consensus procotol.
homepage
repositoryhttps://github.com/cryptape/overlord
max_upload_size
id176884
size253,180
Eason Gao (KaoImin)

documentation

README

Overlord

Overlord consensus protocol.

Crates.io example workflow License Minimum rustc version

Introduction

Overlord is a new consensus protocol that decouple the consensus process from the execution process.

Detailed introduction: 中文|English

Usage

From cargo

[dependencies]
overlord = "0.4"

Overlord takes turns to become the leader by default. If you want to choose a leader randomly, add the random_leader feature to the dependency as below.

[dependencies]
overlord = { version = "0.4", features = ["random_leader"] }

Example

We simulated a salon scene to show an example of using overlord.

A distributed system for reaching a consensus on the content of a speech is realized by simulating the dialogue between speakers through the communication between threads.

Run the example by cargo run --example salon, and the system will output the agreed speech content in turn. Click here to see the detail.

It will check whether different speakers agree on the content of the speech.

Projects using Overlord

  • Muta, a high-performance blockchain framework.
  • Axon, a layer2 of CKB that is compatible with Ethereum.
Commit count: 131

cargo fmt