-
Setup: 4 Origin Servers and 1 load balancer for routing requests to the origin servers.
-
Routing Logic: Use consistent hashing. Storing servers in the hashspace using their name. We store the keys on the rightmost node.
Sample Implementation -
Data Handling:
- Simulate saving data to the appropriate origin server based on the hashed key.
-
HTML Form in Router: Created a web-based interface to:
- Submit keys for routing and saving.
- View server health.
- Add or remove origin servers dynamically.
-
Health Monitoring: Display load on each origin server, at
:8080/health
. -
Data Migration on Server Removal: TODO
Adding New Server F
, and sending data