{ "info": { "author": "Igor Starikov", "author_email": "idlesign@yandex.ru", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "narrow\n======\nhttps://github.com/idlesign/narrow\n\n|release| |lic|\n\n.. |release| image:: https://img.shields.io/pypi/v/narrow.svg\n :target: https://pypi.python.org/pypi/narrow\n\n.. |lic| image:: https://img.shields.io/pypi/l/narrow.svg\n :target: https://pypi.python.org/pypi/narrow\n\n\n**Work in progress. Stay tuned.**\n\n\nDescription\n-----------\n\n*Naive throughput measurements for Python web apps and servers*\n\nThis tries to measure a throughput for various Python web apps and servers\n\nBenchmark report sample: https://idlesign.github.io/narrow/\n\nStands:\n\n* nginx_ssl_static: Nginx static response using SSL\n* nginx_ssl_tcp_uwsgi: Nginx -> UWSGI -> TCP socket -> uwsgi -> app response. Using SSL\n* nginx_ssl_unix_uwsgi: Nginx -> UWSGI -> Unix socket -> uwsgi -> app response. Using SSL\n* nginx_static: Nginx static response\n* nginx_tcp_uwsgi: Nginx -> UWSGI -> TCP socket -> uwsgi -> app response\n* nginx_unix_uwsgi: Nginx -> UWSGI -> Unix socket -> uwsgi -> app response\n* uwsgi: uwsgi HTTP router -> app response\n* uwsgi_ssl: uwsgi HTTP router -> app response. Using SSL\n\nApps/frameworks:\n\n* bottle: Bottle framework application\n* cherrypy: CherryPy framework application\n* django: Django framework application\n* flask: Flask framework application\n* py: Pure wsgi application -- default\n\nBenchers:\n\n* h2load: h2load from nghttp2\n* weighttp: weighttp (no SSL support)\n\n\n\nRequirements\n------------\n\nBasics:\n\n* Python 3.4+\n* `nginx `_\n* `uwsgi `_\n\nBenchmarking tools (any):\n\n* `h2load `_\n* `weighttp `_\n\n\nRunning\n-------\n\nRun benchmarks, dump and plot the results:\n\n.. code-block:: bash\n\n $ narrow --help\n\n $ narrow list_stands\n $ narrow list_apps\n $ narrow list_benchers\n\n $ narrow runlocal --plot\n $ narrow --verbose runlocal --log --stand uwsgi --app flask --bencher weighttp\n $ narrow stats_plot\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/idlesign/narrow", "keywords": "", "license": "BSD 3-Clause License", "maintainer": "", "maintainer_email": "", "name": "narrow", "package_url": "https://pypi.org/project/narrow/", "platform": "", "project_url": "https://pypi.org/project/narrow/", "project_urls": { "Homepage": "https://github.com/idlesign/narrow" }, "release_url": "https://pypi.org/project/narrow/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "Naive throughput measurements for Python web apps and servers", "version": "0.1.0" }, "last_serial": 3992982, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "593680c4ca1c185a020547ba1238420b", "sha256": "2a0345bcf83917a15ea1120c61942981f5434d7e76c6d0fa6fa0aabdaee33e3b" }, "downloads": -1, "filename": "narrow-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "593680c4ca1c185a020547ba1238420b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 25372, "upload_time": "2018-06-23T13:40:56", "url": "https://files.pythonhosted.org/packages/34/50/8e2846fd24521eb63fcf9c7c50d73a6088872dd6f6d99f8919ee0d2ad6d2/narrow-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78a85de23809aebc0fe3b0bc4ad0ec27", "sha256": "c34e16bc8233e1c77682edac89918efd3c53ea0714b711642dcd48dd6cec3dfe" }, "downloads": -1, "filename": "narrow-0.1.0.tar.gz", "has_sig": false, "md5_digest": "78a85de23809aebc0fe3b0bc4ad0ec27", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18120, "upload_time": "2018-06-23T13:36:33", "url": "https://files.pythonhosted.org/packages/19/1d/9cc4b6532c1b610617052fcae79ca7e7074575bc8b76c5bb1476c2796654/narrow-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "593680c4ca1c185a020547ba1238420b", "sha256": "2a0345bcf83917a15ea1120c61942981f5434d7e76c6d0fa6fa0aabdaee33e3b" }, "downloads": -1, "filename": "narrow-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "593680c4ca1c185a020547ba1238420b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 25372, "upload_time": "2018-06-23T13:40:56", "url": "https://files.pythonhosted.org/packages/34/50/8e2846fd24521eb63fcf9c7c50d73a6088872dd6f6d99f8919ee0d2ad6d2/narrow-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78a85de23809aebc0fe3b0bc4ad0ec27", "sha256": "c34e16bc8233e1c77682edac89918efd3c53ea0714b711642dcd48dd6cec3dfe" }, "downloads": -1, "filename": "narrow-0.1.0.tar.gz", "has_sig": false, "md5_digest": "78a85de23809aebc0fe3b0bc4ad0ec27", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18120, "upload_time": "2018-06-23T13:36:33", "url": "https://files.pythonhosted.org/packages/19/1d/9cc4b6532c1b610617052fcae79ca7e7074575bc8b76c5bb1476c2796654/narrow-0.1.0.tar.gz" } ] }