skip to navigation
skip to content

consistent_hash 1.0

Implements consistent hashing with Python and the algorithm is the same as libketama.


Implements consistent hashing that can be used when the number of server nodes can increase or decrease.The algorithm that is used for consistent hashing is the same as libketama <>


It’s so easy to use^_^:

from consistent_hash import ConsistentHash

# You can construct consistent hash with the below three ways
con_hash = ConsistentHash({'':1, '':2, '':1})
# Or
con_hash = ConsistentHash(['', '', '']))
# Or
con_hash = ConsistentHash('')

# Add servers to hash ring
# Get a server via the key of object
server = con_hash.get_node('my_key')
# Delete the server from hash ring, you don't need to indicate weights
con_hash.del_nodes(['', ''])

Unit test

  • Firstly, install nose which extends unittest to make testing easier:

    pip install nose
  • Then, run tests:

    # Option -s any stdout output will be printed immediately
    # and -v be more verbose
    nosetests -s -v

More information about nose <>

File Type Py Version Uploaded on Size
consistent_hash-1.0-py2.7.egg (md5) Python Egg 2.7 2012-10-24 6KB
consistent_hash-1.0.tar.gz (md5) Source 2012-10-24 3KB