Hi Josh, >Second use case: Distributed locking This is one of the most common uses of ZooKeeper. There are many implementations - one included with the ZK distro. Also, there is Curator: https://github.com/Netflix/curator
>First use case: Distributing work to a cluster of nodes This sounds feasible. If you give more details I and others on this list can help more. -JZ ________________________________________ From: Josh Stone [[email protected]] Sent: Wednesday, January 04, 2012 8:09 PM To: [email protected] Subject: Use cases for ZooKeeper I have a few use cases that I'm wondering if ZooKeeper would be suitable for and would appreciate some feedback. First use case: Distributing work to a cluster of nodes using consistent hashing to ensure that messages of some type are consistently handled by the same node. I haven't been able to find any info about ZooKeeper + consistent hashing. Is anyone using it for this? A concern here would be how to redistribute work as nodes come and go from the cluster. Second use case: Distributed locking. I noticed that there's a recipe for this on the ZooKeeper wiki. Is anyone doing this? Any issues? One concern would be how to handle orphaned locks if a node that obtained a lock goes down. Third use case: Fault tolerance. If we utilized ZooKeeper to distribute messages to workers, can it be made to handle a node going down by re-distributing the work to another node (perhaps messages that are not ack'ed within a timeout are resent)? Cheers, Josh
