Replication system design

When you design a replication system, you make three main decisions: how the information flows between servers, how to resolve conflicts between replicated data, and the topology of the network of servers.