Distributed Systems
Lab 1
Developing and deploying a broadcast algorithm for a blockchain management system on a Cloud infrastructure
- Student : Xavier Perret
- Email : xavier.perret@etu.hesge.ch
- Group : 1
- ssh://git@ssh.hesge.ch:10572/xavier.perret/perso-distributed-systems.git
- https://gitedu.hesge.ch/xavier.perret/perso-distributed-systems.git
Client
To launch the client you need to run the following command:
go main.go --config=client_config.yaml --client
Please note that the client_config.yaml
can be a neighbor-x.yaml
file if you want to create a transaction and spread
it to neighbours instead on manually entering an ip.
Server
Root Server
To lauch the server to which you wish to send commands using the client you need to do
go main.go --config=neighbor-0.yaml --server --root
Normal Server
To launch the other server you need to run the following command:
go main.go --config=server_config.yaml --server
Functionalities
- Able to create a transaction from the client and then request to root server to broadcast by wave to all the other servers
- Able to send a rate request from client to root server then broadcast by wave to all the other servers (buggy at the moment)
- Not able to fake a transaction yet
- Able to print all local transaction from any server or client