Distributed systems are characterized by exchanging state over high-latency or unreliable links.
Brent Hoover's insight:
This is a good article showing the tradeoffs involved in various type of High Availability strategies. To paraphrase the programming adage "Fast, Accurate, Cheap. Pick two".Image may be NSFW.
Clik here to view.
