Zab is a atomic broadcast protocol designed for the Apache ZooKeeper. ZooKeeper uses Zab to replicate its in-memory state to a set of backups consistently to provide high availability. It has similar goal with Paxos and Raft with high performance.
Since ZooKeeper's Zab implementation is rather entangled with ZooKeeper code base, we implement Jzab as an independent implementation of Zab protocol to facilitate other users who want to build applications on top of it.
Slides for ZooKeeper meetup.
Jzab is available on Maven.If your project uses Maven, please add these lines to your pom.xml.
<dependency>
<groupId>com.github.zk1931</groupId>
<artifactId>jzab</artifactId>
<version>0.4.0-SNAPSHOT</version>
</dependency>