tags: #distributed-systems #go #mit #mooc #scalability #public
- Challeneges
- concurrency
- partial failure
- perfomance
- Infrastructure
- storage
- communication
- computation
- Abstractions
- Implementations
- RPC
- threads
- concurrency control
- perfomance
- scalability
- 2X computers -> 2X throughput
- Better because programmers are expensive than computers
- You can easily scake web servers. But scaling database is not that easy
- fault tolerence
- availability
- If something goes down there is something else
- recoverability
- Easy to recover after repair
- Non volatile storage can be used.
- replication
- If you have like 1000 computers you can have like 3 computers fail a day
- Exact number not probably
- Someone stepped on network cable
- consistency
- strongly consistent
- weakly consistent
- Don’t have super strong consisteny. But still there are some ideas on how to make this useful
- map reduce
- go