{ "info": { "author": "David Holtz", "author_email": "david.richard.holtz@gmail.com", "bugtrack_url": null, "classifiers": [ "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# ZEDIS \n\n\"Logo\"\n\nA lightweight [zeromq](https://github.com/zeromq/libzmq) and [seld](https://github.com/spacejam/sled) based replacement for Redis. <90 LOC focused on a portable cross\nlanguage simple storage system. No need to run a full service.\n\n## Install\n\n## Recommended Install\n\nThis will always fetch and build the most recent version of zedis for your computer. If you don't have cargo checkout https://www.rust-lang.org/tools/install\n```\ncargo install zedis\n```\n\n\n\"Logo\"\n\n\n#### Not supporting `apt` and `homebrew` anymore, too many places to update.\n\n\n## Run \ud83d\udc4d\n```bash\nzedis\n#\t _______ ___ ___ ___ \n#\t |_ / __| \\_ _/ __|\n#\t / /| _|| |) | |\\__ \\ \n#\t /___|___|___/___|___/ \n#\n```\n\nZedis is opinionated and limited. With ZEDIS you can only READ and WRITE key values pairs. All writes overwrite past values. \n\nReally Fast reads `< 250\u00b5s` for `~2 MB` json payload. \n\nPretty Fast writes `< 18ms` for `~2 MB` json payload. \n\n#### Setting Port\n\nNow you can set the port/socket that `zedis` will be available on. If no port is specified zedis will fallback on `5555`\n\n```bash\nzedis 6677\n```\n\n## Interacting with CLI app\n[get zedis cli](https://github.com/drbh/zedis-cli)\n\"Logo\"\n\n## Commands\n\n### Get values\n\n```\nGET key\n```\n\nReturn the string values of the key. Returns `b'Error occurred: InvalidKey'` if key does not exist\n\n### Set values \n\n```\nSET key value\n```\nInsert a key value. If the key already exists the value will be overwritten.\n\n### Remove values\n\n```\nDEL key\n```\n\nDelete a key and it's value from zedis. This will also return the last known value of the key.\n\n### Show keys\n\n```\nKEYS\n```\n\nThis retrns a JSON format list of all of the keys. This is ineffiecent, it iterates through the whole DB and then concats the key names togther. Do not use if you have more than 1000 keys if you want instant results.\n\n### Query\n\n```\nPRE keyprefix\n```\n\nReturns all keys with that prefix. So \"A\" will return \"Alpha\", \"Awesome\"... this is case sensitive.\n\n#### Python3 client example\n```python\nimport zmq\nimport json\n\nport = \"5555\"\n\ncontext = zmq.Context()\nsocket = context.socket(zmq.REQ)\nsocket.connect(\"tcp://localhost:%s\" % port)\n\nsocket.send_string(\"SET david richard blyn holtz\");socket.recv()\n# 'done.'\n\nsocket._string(\"GET david\");socket.recv()\n# 'richard blyn holtz'\n\njsonblob = json.dumps({\"example\": \"you can store seralized JSON\"})\nsocket.send_string(\"SET js \"+jsonblob);socket.recv()\n# 'done.'\n\nsocket.send_string(\"GET js\")\njson.loads(socket.recv())\n# {u'exmple': u'lorem ipsum...'}\n\nsocket.send_string(\"DEL js\");socket.recv();socket.recv()\n# b'2 yo yo'\n\n## ADDING A BUNCH OF KEYS\nfor x in range(0, 100):\n socket.send_string(\"SET \"+str(x)+\" \"+str(x)+\" yo yo\")\n socket.recv()\n\nsocket.send_string(\"PRE 1\");socket.recv()\n# b'[\"1\", \"10\", \"11\", \"12\", \"13\", \"14\", \"15\", \"16\", \"17\", \"18\", \"19\"]'\n\n\nsocket.send_string(\"KEYS\");socket.recv()\n# b'[\"0\", \"1\", \"10\", \"11\", \"12\", \"13\", \"14\", \"15\", \"16\", \"17\", \"18\", \"19\", \"20\", \"21\", \"22\"]'\n\n```\n\n\n### Check alive\n```bash\nnc -v -z -w 5 localhost 5555\n# found 0 associations\n# found 1 connections:\n# 1:\tflags=82\n# \toutif lo0\n# \tsrc 127.0.0.1 port 52227\n# \tdst 127.0.0.1 port 5555\n# \trank info not available\n# \tTCP aux info available\n\n# Connection to localhost port 5555 [tcp/personal-agent] succeeded!\n```\n\n## \ud83e\udd80 `01010` Developer Stuff\n\n#### Build it\nClone, build and add a symlink so you can access `zedis` in the cli\n```bash\ngit clone https://github.com/drbh/zedis.git && cd zedis\ncargo build --release && sh install.sh \n```\n\n#### Packaging\n\n```\nfpm -f -s dir -t deb -n zedis target/release/zedis=/usr/local/\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/drbh/pyzedis", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pyzedis", "package_url": "https://pypi.org/project/pyzedis/", "platform": "", "project_url": "https://pypi.org/project/pyzedis/", "project_urls": { "Homepage": "https://github.com/drbh/pyzedis" }, "release_url": "https://pypi.org/project/pyzedis/0.0.1/", "requires_dist": null, "requires_python": "", "summary": "A Python client for zedis", "version": "0.0.1" }, "last_serial": 5891993, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "e1e49b81528c5e57c11584b1d14fe50a", "sha256": "9277c42272a7550b4bb9d2c377bcaeb51634647b57375961cd6783df1147e834" }, "downloads": -1, "filename": "pyzedis-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e1e49b81528c5e57c11584b1d14fe50a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3484, "upload_time": "2019-09-26T18:15:02", "url": "https://files.pythonhosted.org/packages/23/f7/83a1639abaaf90c9fd9c944815d5558c40bcc112f1f30270cb01659e4d49/pyzedis-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b12acd851b33b5aae670fa697383fd6", "sha256": "a7970a7552d6c4090727356b209d460136f6321aa5eb11e8892053e990cfb2fa" }, "downloads": -1, "filename": "pyzedis-0.0.1.tar.gz", "has_sig": false, "md5_digest": "0b12acd851b33b5aae670fa697383fd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3500, "upload_time": "2019-09-26T18:15:05", "url": "https://files.pythonhosted.org/packages/22/d7/941674b9e043a4758bfa4a6a647274081d0e9b2e9446d4be57965430b3d3/pyzedis-0.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e1e49b81528c5e57c11584b1d14fe50a", "sha256": "9277c42272a7550b4bb9d2c377bcaeb51634647b57375961cd6783df1147e834" }, "downloads": -1, "filename": "pyzedis-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e1e49b81528c5e57c11584b1d14fe50a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3484, "upload_time": "2019-09-26T18:15:02", "url": "https://files.pythonhosted.org/packages/23/f7/83a1639abaaf90c9fd9c944815d5558c40bcc112f1f30270cb01659e4d49/pyzedis-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b12acd851b33b5aae670fa697383fd6", "sha256": "a7970a7552d6c4090727356b209d460136f6321aa5eb11e8892053e990cfb2fa" }, "downloads": -1, "filename": "pyzedis-0.0.1.tar.gz", "has_sig": false, "md5_digest": "0b12acd851b33b5aae670fa697383fd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3500, "upload_time": "2019-09-26T18:15:05", "url": "https://files.pythonhosted.org/packages/22/d7/941674b9e043a4758bfa4a6a647274081d0e9b2e9446d4be57965430b3d3/pyzedis-0.0.1.tar.gz" } ] }