Skip to content

labsister21/tugas-besar-sister-gyatt-belajar

Repository files navigation


Raft Consensus

Tugas Besar 1 IF3130 Sistem Paralel dan Terdistribusi

Implementasi RAFT Consensus Menggunakan NodeJS


Made By:

Kelompok 09:

NIM Nama
13522037 Farhan Nafis Rayhan
13522071 Bagas Sambega Rosyada
13522091 Raden Francisco Trianto B.

External Links

(back to top)

About The Project

Raft Consensus Algorithm
Based on this paper: https://raft.github.io/raft.pdf

Consensus protocol/algorithm allows a collection of machine to work as a coherent group that can survive the failure of its members. Used in a distributed system, consesus main idea is to use a voting mechanism to maintain a global data where it needs the majority of vote before changing the global data.

Raft, itself is one of the consesus algorithm to improve Paxos. Improved from Paxos, Raft uses a leader election, log replication, and safety to better increase the effeciency and structure. This protocol configure how each computer in the system always in sync and match their transaction logs and their order.

(back to top)

Getting Started

Prerequisites

Project dependencies

  • Docker

  • NodeJS and npm

(back to top)

Installation

How to install and use your project

  1. Clone the repo

    git clone https://github.com/labsister21/tugas-besar-sister-gyatt-belajar.git
  2. Change directory

    cd tugas-besar-sister-gyatt-belajar
  3. Build the program

    docker-compose up --build

(back to top)

Instruction

Run all the servers and clients node at once,

docker compose up -d

and to run a single client, for example one client, find the docker container name using docker ps, and then use the container name in

docker attach {docker-container-name}

(back to top)


THANK YOU!

About

tugas-besar-sister-gyatt-belajar created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •