Progetto Distributed System @ Politecnico di Milano - Anno 2019/2020
Stefano Fedeli - Andrea Pozzoli - Lipei Liu
REPLICATED DATA STORE
Implement a replicated key-value store that offers causal consistency.
Requirements
- Implement causal consistency with limited (coordination) overhead.
- New replicas can be added or removed at runtime.
- The store will be implemented in Java using RMI for the server-side part together with some client code written in Python.
Assumptions
- Processes are reliable.
- Channels are point-to-point (no broadcast)
- The same fault model of the Internet (congestions or partition).
- Clients are "sticky": they always interact with the same replica.
- Go to /deliveries and start the LoadBalancer
java -jar LoadBalancer.jar
- Start as many replicas as you want even on different machines on the same LAN
java -jar Replica.jar [LoadBalancer IP] [Local machine IP]
- Start the as many client as you want even on different machines on the same LAN
python clientGUI.py