Source: python-uhashring Section: python Priority: optional Maintainer: Debian OpenStack Uploaders: Thomas Goirand , Build-Depends: debhelper-compat (= 11), dh-python, openstack-pkg-tools (>= 99~), python3-all, python3-setuptools, Build-Depends-Indep: python3-memcache, python3-pytest, Standards-Version: 4.5.0 Vcs-Browser: https://salsa.debian.org/openstack-team/python/python-uhashring Vcs-Git: https://salsa.debian.org/openstack-team/python/python-uhashring.git Homepage: https://github.com/ultrabug/uhashring Package: python3-uhashring Architecture: all Depends: python3-memcache, ${misc:Depends}, ${python3:Depends}, Description: full featured consistent hashing python library compatible with ketama Uhashring implements consistent hashing in pure Python. . Consistent hashing is mostly used on distributed systems/caches/databases as this avoid the total reshuffling of your key-node mappings when adding or removing a node in your ring (called continuum on libketama). More information and det ails about this can be found in the *literature* section. . This full featured implementation offers: * a lot of convenient methods to use your consistent hash ring in real world applications. * simple integration with other libs such as memcache through monkey patching. * a full ketama compatibility if you need to use it. * all the missing functions in the libketama C python binding (which is not even available on pypi) for ketama users. * possibility to use your own weight and hash functions if you don't care about the ketama compatibility. * Instance-oriented usage, so you can use your consistent hash ring object directly in your code (see advanced usage). * tests of implementation, key distribution and ketama compatibility. . Per node weight is also supported and will affect the nodes distribution on the ring.