zktools is a package of tools implementing higher level constructs using Apache Zookeeper.
It currently provides:
- Configuration - Zookeeper Configuration Helpers to store and load configuration information stored in Zookeeper nodes.
- Locks - A Zookeeper lock with support for non-blocking acquire, modeled on Python’s Lock objects that also includes a Revocable Shared Locks with Freaking Laser Beams described in the Zookeeper Recipe’s.
See the full docs for more information.
zktools is offered under the MPL license.
- Fixed packaging bug.
- Added context manager return to lock to allow use of the ‘with’ statement.
- Refactored to use zc.zk ZooKeeper library for higher level Zookeeper abstraction with automatic watch re-establishment.
- Node object to retrieve ZNode data from Zookeeper and keep it up to date.
- Node objects can have data and children subscribers.
- NodeDict object that maps a shallow tree (one level of children) into a dict-like object.
- SharedZkLock has been refactored into ZkWriteLock and ZkReadLock.
- revoked is a property of Locks, not a method.
- ZkConnection is gone, lock objects, ZkNode, and ZkNodeDict all expect zc.zk ZooKeeper instances.
- Lock implementation, with revokable shared locks.
- Zookeeper connection object with automatic reconnect.