{ "info": { "author": "Alex Damian", "author_email": "alex@yplanapp.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7" ], "description": "=================\nDjango-Speedboost\n=================\n\nReplaces select Django modules with Cython-compiled versions for great speed.\n\nRationale\n---------\n\nCode always has bottlenecks, and Django is no exception. By selectively compiling the hot spots in Django with Cython,\nwe can make it go faster. Django-Speedboost is a drop-in module that when installed replaces parts of Django with its\nCython-based versions.\n\nRequirements\n------------\n\n* Python: 2.7\n* Django: 1.8.8\n\nDjango-Speedboost's test suite runs the Django test suite after installation to verify that it doesn't do anything\nincompatible.\n\nInstallation\n------------\n\nDjango-Speedboost is currently compiled for Django 1.8.8 only. Install with:\n\n.. code-block:: bash\n\n pip install django_speedboost\n\nIf you get missing header compilation errors, install your distribution's python library development headers, for\nexample on Ubuntu:\n\n.. code-block:: bash\n\n sudo apt-get install libpython-dev\n\nHow It Works\n------------\n\nDjango-Speedboost includes a ``.pth`` file that allows it to import itself at the point\u00a0the Python interpreter loads.\nIt uses this to install an import hook that detects the loading of Django submodules to replace them.\n\nCurrently replaced modules:\n\n* ``django.template.context``\n* ``django.template.context_processors``\n* ``django.template.base``\n* ``django.template.defaulttags``\n\nResults\n=======\n\nSetting Django with WSGI behind Apache 2, ab shows a consistent 13% reduction in load times on an Admin page with loads\nof inlines and fields:\n\n.. code-block:: bash\n\n (venv)ddalex@watson ~/Projects/backend(T7569)$ diff --side-by-side without_so.txt with_so.txt\n This is ApacheBench, Version 2.3 <$Revision: 1604373 $>\t\tThis is ApacheBench, Version 2.3 <$Revision: 1604373 $>\n Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.ze\tCopyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.ze\n Licensed to The Apache Software Foundation, http://www.apache\tLicensed to The Apache Software Foundation, http://www.apache\n\n Benchmarking guest (be patient).....done\t\t\tBenchmarking guest (be patient).....done\n\n\n Server Software: Apache/2.4.7\t\t\t\tServer Software: Apache/2.4.7\n Server Hostname: guest\t\t\t\t\tServer Hostname: guest\n Server Port: 80\t\t\t\t\tServer Port: 80\n\n Document Path: /admin/model/object/57/\t\tDocument Path: /admin/model/object/57/\n Document Length: 619067 bytes\t\t\t\tDocument Length: 619067 bytes\n\n Concurrency Level: 2\t\t\t\t\tConcurrency Level: 2\n Time taken for tests: 15.724 seconds\t\t\t |\tTime taken for tests: 13.932 seconds\n Complete requests: 20\t\t\t\t\tComplete requests: 20\n Failed requests: 0\t\t\t\t\tFailed requests: 0\n Total transferred: 12390600 bytes\t\t\t\tTotal transferred: 12390600 bytes\n HTML transferred: 12381340 bytes\t\t\t\tHTML transferred: 12381340 bytes\n Requests per second: 1.27 [#/sec] (mean)\t\t |\tRequests per second: 1.44 [#/sec] (mean)\n Time per request: 1572.402 [ms] (mean)\t\t |\tTime per request: 1393.243 [ms] (mean)\n Time per request: 786.201 [ms] (mean, across all concur |\tTime per request: 696.621 [ms] (mean, across all concur\n Transfer rate: 769.54 [Kbytes/sec] received\t |\tTransfer rate: 868.49 [Kbytes/sec] received\n\n Connection Times (ms)\t\t\t\t\t\tConnection Times (ms)\n min mean[+/-sd] median max\t\t\t min mean[+/-sd] median max\n Connect: 0 0 0.1 0 1\t\t |\tConnect: 0 0 0.0 0 0\n Processing: 624 1570 723.5 2008 2313\t\t |\tProcessing: 585 1391 578.5 1764 1991\n Waiting: 621 1566 722.6 1999 2311\t\t |\tWaiting: 572 1381 578.2 1741 1988\n Total: 624 1570 723.5 2008 2313\t\t |\tTotal: 585 1391 578.5 1764 1991\n\n Percentage of the requests served within a certain time (ms)\tPercentage of the requests served within a certain time (ms)\n 50% 2008\t\t\t\t\t\t |\t 50% 1764\n 66% 2106\t\t\t\t\t\t |\t 66% 1845\n 75% 2237\t\t\t\t\t\t |\t 75% 1917\n 80% 2263\t\t\t\t\t\t |\t 80% 1936\n 90% 2288\t\t\t\t\t\t |\t 90% 1981\n 95% 2313\t\t\t\t\t\t |\t 95% 1991\n 98% 2313\t\t\t\t\t\t |\t 98% 1991\n 99% 2313\t\t\t\t\t\t |\t 99% 1991\n 100% 2313 (longest request)\t\t\t\t |\t 100% 1991 (longest request)\n\n\n\n\n=======\nHistory\n=======\n\nfuture\n------\n\n\n\n1.8.8.0 (2016-01-06)\n--------------------\n\n* First proper Django 1.8.8 version. Replaces 4 modules inside ``django.template``.", "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/YPlan/django-speedboost", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "django_speedboost", "package_url": "https://pypi.org/project/django_speedboost/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django_speedboost/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/YPlan/django-speedboost" }, "release_url": "https://pypi.org/project/django_speedboost/1.8.8.0/", "requires_dist": null, "requires_python": null, "summary": "Replaces select Django modules with Cython-compiled versions for great speed.", "version": "1.8.8.0" }, "last_serial": 1891285, "releases": { "1.00": [ { "comment_text": "", "digests": { "md5": "620a4171ae36def58a7299a29fcf7e69", "sha256": "3439f8f5b8011b091f5faa090644198df5f03180b0ac5c8392cd5d3c5402fef4" }, "downloads": -1, "filename": "django_speedboost-1.00.tar.gz", "has_sig": false, "md5_digest": "620a4171ae36def58a7299a29fcf7e69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 585932, "upload_time": "2016-01-04T18:06:12", "url": "https://files.pythonhosted.org/packages/b5/57/5533565724b934df0932bb9c329158e844bbf806808ea2445540bf940a2c/django_speedboost-1.00.tar.gz" } ], "1.02": [ { "comment_text": "", "digests": { "md5": "295df1289897ac29ce72b97fba606330", "sha256": "afe0890f99215075cd4a9af9d24a7ef3558675a2e14a5fa6455a8e03b7472183" }, "downloads": -1, "filename": "django_speedboost-1.02.tar.gz", "has_sig": false, "md5_digest": "295df1289897ac29ce72b97fba606330", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 585934, "upload_time": "2016-01-05T10:54:29", "url": "https://files.pythonhosted.org/packages/8a/ac/1c3fa704709b700c57d0b509652eac3f4b207326c710b36a9cfd6e536e1b/django_speedboost-1.02.tar.gz" } ], "1.8.8.0": [ { "comment_text": "", "digests": { "md5": "cbbb450cf94f8852a273b14aa4c7b8e3", "sha256": "e73c904c949351b1e4944934fcbdec2280c8e7d2e84c3bc6538bd5e961d8121d" }, "downloads": -1, "filename": "django_speedboost-1.8.8.0.tar.gz", "has_sig": false, "md5_digest": "cbbb450cf94f8852a273b14aa4c7b8e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 589097, "upload_time": "2016-01-06T14:26:44", "url": "https://files.pythonhosted.org/packages/92/27/c9619d2820a7f4a33411abfffa687e67b083339f527605f1a68e8b56f04b/django_speedboost-1.8.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cbbb450cf94f8852a273b14aa4c7b8e3", "sha256": "e73c904c949351b1e4944934fcbdec2280c8e7d2e84c3bc6538bd5e961d8121d" }, "downloads": -1, "filename": "django_speedboost-1.8.8.0.tar.gz", "has_sig": false, "md5_digest": "cbbb450cf94f8852a273b14aa4c7b8e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 589097, "upload_time": "2016-01-06T14:26:44", "url": "https://files.pythonhosted.org/packages/92/27/c9619d2820a7f4a33411abfffa687e67b083339f527605f1a68e8b56f04b/django_speedboost-1.8.8.0.tar.gz" } ] }