Algorithms
- hash cash
- retargeting
- Lamport timestamps
vector clocks Sharding consistent hashing
problems
- leader election
- consensus
- distributed search
- spanning tree generation
- mutual exclusion
- resource allocation
choice of an appropriate distributed algorithm
- the characteristics of the problem
- characteristics of the system the algorithm will run on
- type and probability of processor or link failures
- the kind of inter-process communication that can be performed
- level of timing synchronization between separate processes