Contact Us

Interested? Intrigued? Something to report?

Feel free to get in touch with us.

Concept, Organization, Back-end Bugs

Reach out to Tim Anglade via email or twitter.

Design, Front-end Bugs

Send your queries to Stefano J. Attardi
(Check out his website while you're at it!)

City-specific question

Please talk to your local organizers instead. There's a link to their email address on the About page.


This one’s for you, Cliff.

Don’t forget to lean into it.

A History of the Virtual Synchrony Replication Model

by Ken Birman

A “Cloud Computing” revolution is underway, supported by massive data centers that often contain thousands (if not hundreds of thousands) of servers. In such systems, scalability is the mantra and this, in turn, compels application developers to replicate various forms of information. By replicating the data needed to handle client requests, many services can be spread over a cluster to exploit parallelism. Servers also use replication to implement high availability and fault‐tolerance mechanisms, ensure low latency, implement caching, and provide distributed management and control. On the other hand, replication is hard to implement, hence developers typically turn to standard replication solutions, packaged as sharable libraries.

Virtual synchrony, the technology on which this article will focus, was created by the author and his colleagues in the early 1980’s to support these sorts of applications, and was the first widely adopted solution in the area. Viewed purely as a model, virtual synchrony defines rules for replicating data or a service that will behave in a manner indistinguishable from the behavior of some non‐replicated reference system running on a single non‐faulty node. The model is defined in the standard asynchronous network model for crash failures. This turns out to be ideal for the uses listed above.

Difficulty rating:

Annotated Versions

None yet.

Upcoming Discussions

None yet.