A repository containing our learnings and implementations for the project "Distributed DNS in the Cloud" under IEEE-NITK.
-
Blog Article explaining the project.
-
Material Related to Learning Phase - Repo
-
Branches:
-
Wiki explaining different aspects of the Raft consensus implementation.
-
Clone the repo.
-
Run multiple terminals (one for each replica).
-
Change directory to the cloned repo in each terminal window.
-
On each terminal, run
go run . -n <number_of_replicas>
and follow the on screen instructions. -
For running tests, use
go test
. NOTE: Do not run the tests in parallel.
Assume that the leader is running the server listening for client requests on port :xyzw on localhost.
Use curl to access the key value store and perform any of the CRUD functions
POST request : curl -d "value=<value>&client=<id>" -X POST http://localhost:xyzw/<key>
GET request : curl -X GET http://localhost:xyzw/<key>
PUT request : curl -d "value=<value>&client=<id>" -X PUT http://localhost:xyzw/<key>
DELETE request : curl -X DELETE http://localhost:xyzw/<key>