{ "info": { "author": "maralla", "author_email": "maralla.ai@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Software Development" ], "description": "pyketama\n========\n![build](https://img.shields.io/travis/maralla/pyketama.svg)\n\npyketama is a cython implementation of ketama consistent hashing algorithm.\n\n\nInstall\n=======\n\n```bash\npip install pyketama\n```\n\n\nUsage\n=====\n\n```python\nimport ketama\n\ndata = [\"127.0.0.1:12211\", \"127.0.0.1:12212\"]\ncontinuum = ketama.Continuum(data)\nprint(continuum['test'])\n\n\n# with weight, (key, weith)\ndata = [(\"127.0.0.1:12211\", 400), (\"127.0.0.1:12212\", 500)]\ncontinuum = ketama.Continuum(data)\nprint(continuum['test'])\n\n\n# with value, (key, value, weight)\ndata = [(\"node1\", \"127.0.0.1:12211\", 400), (\"node2\", \"127.0.0.1:12212\", 500)]\ncontinuum = ketama.Continuum(data)\nprint(continuum['test'])\n\n\n# set item like dict\ncontinuum = ketama.Continuum()\ncontinuum['tom'] = 123\ncontinuum['jerry'] = \"hello world\"\nprint(continuum['test'])\n\n# with weight (key, weight)\ncontinuum = ketama.Continuum()\ncontinuum[('tom', 100)] = 123\ncontinuum[('jerry', 300)] = \"hello world\"\nprint(continuum['test'])\n```", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/maralla/pyketama", "keywords": "python ketama consistent hash cython", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "pyketama", "package_url": "https://pypi.org/project/pyketama/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pyketama/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/maralla/pyketama" }, "release_url": "https://pypi.org/project/pyketama/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "ketama consistent hashing in cython", "version": "0.2.1" }, "last_serial": 1333040, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "1db88a02aeaad5880b82ebf7989187ef", "sha256": "8206feb86915fe22c1c70fc958cf3287283e372929190fbdc64d939c55d364f8" }, "downloads": -1, "filename": "pyketama-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1db88a02aeaad5880b82ebf7989187ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36324, "upload_time": "2014-11-27T10:15:15", "url": "https://files.pythonhosted.org/packages/f7/38/92393698afadaed71f9125cd70198c2551fb16ed6ea256611b125963a0fb/pyketama-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "95212fb65714cadc345c78bb722687b8", "sha256": "2e05502714ec06076e03745a96f1656fa369f8cc384d9e1147d9e540c082d04c" }, "downloads": -1, "filename": "pyketama-0.2.1.tar.gz", "has_sig": false, "md5_digest": "95212fb65714cadc345c78bb722687b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37265, "upload_time": "2014-12-06T07:00:23", "url": "https://files.pythonhosted.org/packages/2c/5a/095dc1543a0607d98b7dc6d495c3af548847f4da76d979c7c30c784ac724/pyketama-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "95212fb65714cadc345c78bb722687b8", "sha256": "2e05502714ec06076e03745a96f1656fa369f8cc384d9e1147d9e540c082d04c" }, "downloads": -1, "filename": "pyketama-0.2.1.tar.gz", "has_sig": false, "md5_digest": "95212fb65714cadc345c78bb722687b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37265, "upload_time": "2014-12-06T07:00:23", "url": "https://files.pythonhosted.org/packages/2c/5a/095dc1543a0607d98b7dc6d495c3af548847f4da76d979c7c30c784ac724/pyketama-0.2.1.tar.gz" } ] }