2.7 KiB
kazoo
Kazoo is a Python library designed to make working with Zookeeper a more hassle-free
experience that is less prone to errors.
Kazoo features:
- Support for gevent 0.13 and gevent 1.0b
- Unified asynchronous API for use with greenlets or threads
- Lock, Party, Election, and Partitioner recipe implementations (more implementations are in development)
- Data and Children Watchers
- Integrated testing helpers for Zookeeper clusters
- Simplified Zookeeper connection state tracking
- Pure-Python based implementation of the wire protocol, avoiding all the memory leaks, lacking features, and debugging madness of the C library
Kazoo is heavily inspired by Netflix Curator simplifications and helpers.
Note
You should be familiar with Zookeeper and have read the Zookeeper Programmers Guide before using kazoo.
Reference Docs
install basic_usage async_usage implementation testing api Changelog <changelog>
Why
Using Zookeeper in
a safe manner can be difficult due to the variety of edge-cases in Zookeeper and other bugs
that have been present in the Python C binding. Due to how the C library
utilizes a separate C thread for Zookeeper communication some libraries like gevent also don't work properly by
default.
By utilizing a pure Python implementation, Kazoo handles all of these cases and provides a new asynchronous API which is consistent when using threads or gevent greenlets.
Source Code
All source code is available on github under kazoo <https://github.com/python- zk/kazoo>.
Bugs/Support
Bugs and support issues should be reported on the kazoo github issue tracker.
The developers of kazoo can frequently be found on the
Freenode IRC network in the #zookeeper channel.
Indices and tables
genindexmodindexglossary
glossary
License
kazoo is offered under the Apache License 2.0.
Authors
kazoo started under the Nimbus Project and through
collaboration with the open-source community has been merged with code
from Mozilla and the Zope Corporation.