juria-blockchain

module
v0.0.0-...-169a2f2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 10, 2021 License: GPL-3.0

README

Juria Blockchain

Juria is a high-performance consortium blockchain with Hotstuff consensus mechanism and a transaction-based state machine.

Hotstuff provides a mechanism to rotate leader (block maker) efficiently among the validator nodes. Hence it is not required to have a single trusted leader in the network.

With the use of Hotstuff three-chain commit rule, Juria blockchain ensures that the same history of blocks is committed on all nodes despite network and machine failures.

Benchmark

Getting started

You can run the cluster tests on local machine in a few seconds.

  1. Install dependencies
# MacOS
xcode-select --install
# Ubuntu
sudo apt-get install build-essential
  1. Download and install go 1.16
  2. Prepare the repo
git clone https://github.com/aungmawjj/juria-blockchain
cd juria-blockchain
go mod tidy
  1. Run tests
cd tests
go run .

The test script will compile cmd/juria and set up a cluster of 4 nodes with different ports on the local machine. Experiments from tests/experiments will be run and health checks will be performed throughout the tests.

NOTE: Network simulation experiments are only run on the remote linux cluster.

Documentation

About the project

License

This project is licensed under the GPL-3.0 License.

Contributing

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL