rahulvudutala / Project-raft

This repository stores the implementation of Raft algorithm using python, java, rabbitMQ and redis.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

#CMPE 273 Group Project - Fall 2016 Project Team - CodeMonks

#Team Members

  1. Nitinkumar Gove
  2. Sushant Vairagade
  3. Sohrab Ali
  4. Saurabh Gedam

#Objective To implement raft distributed consensus algorithm along with graphical visualization of cluster node states and data replication mechanism across all the cluster nodes.

#How to

  1. Start the RabbitMQ service
  2. Start RedisDB
  3. Build server code using below maven command
    mvn clean install
  4. Execute the generated jar file using below command:
    java -jar raft-consensus-{version}.jar -ip {host} -p {port}
    eg. java -jar raft-consensus-1.0-SNAPSHOT.jar -ip localhost -p 8080
    You can execute as many servers as you wish they will add themselves to the cluster.
  5. Use Pyhton file "ClientTest.py" to perform operation as a client
  6. You can run the "index.htm" to get the live status of the nodes

#Demo Watch Demo Here

#Project Requirements

  1. Java
  2. Redis
  3. RabbitMQ
  4. Python

#References

  1. Introduction to Raft
  2. Raft Visualization
  3. In Search of an Understandable Consensus Algorithm

About

This repository stores the implementation of Raft algorithm using python, java, rabbitMQ and redis.


Languages

Language:Java 84.0%Language:Python 8.3%Language:CSS 5.1%Language:HTML 2.6%