Back to All 55 System Design Questions
#53Hard

Create a Distributed File Transfer System like Bittorrent

Asked by:GoogleAtlassianTwitch

Recommended Solutions from the Web

Key Details & Edge Cases You Should Know

How will you ensure that a file is hosted on the system reliably, even if one machine goes down?

If a user wants to download a file, how do you locate the machine that holds it?

You probably need some sort of ledger or metadata table, how will you store that?

How will you make sure that a download is completed?

When a machine is added, how do you scale the cluster?

How do you secure the files and ensure no one modifies them?