Fault Tolerance in Distributed Systems Essay