Synchronisation, Fault Tolerance, Consistency and Replication