Great intro to ZooKeeper and the problems it can help solve by Sean Mackrory:
Done wrong, distributed software can be the most difficult to debug.
Done right, however, it can allow you to process more data, more
reliably and in less time. Using Apache ZooKeeper allows you to
confidently reason about the state of your data, and coordinate your
cluster the right way. You’ve seen how easy it is to get a ZooKeeper
server up and running. (In fact, if you’re a CDH user, you may
already have an ensemble running!) Think about how ZooKeeper could
help you build more robust systems
Leaving aside for a second the main topic of the post, another important lesson here is that the NIH syndrom in distributed systems is very expensive.
Original title and link: Using Apache ZooKeeper to Build Distributed Apps (And Why) ( ©myNoSQL)