http://www.distributed-systems.net/index.php?id=distributed-systems-principles-and-paradigms