Updated channels loadtesting results (#437)

* Starting reporting write up.

* Added in charts

* Added in images to report

* Cleaned up comments

* Added in clarifications about the testing

* Added in clarification

* Added date

* Added in subdir with same content

* Added in supervisor configs

* updated the readme

* Update and rename README.rst to README.md

* Update README.md

* Added in version info.

* Changes to root info

* Update README.md

* Update README.md

* Cleaned up presentation

* Update README.rst

* Updated images

* Updated images and content
This commit is contained in:
Robert Roskam 2016-11-27 13:12:50 -05:00 committed by Andrew Godwin
parent 3dddefa845
commit ce65de323c
3 changed files with 22 additions and 2 deletions

View File

@ -13,6 +13,15 @@ In order to control for variances, several measures were taken:
- several tests were run for each setup and test type
Setups
~~~~~~~~~~~~
3 setups were used for this set of tests:
1) Normal Django with Gunicorn (19.6.0)
2) Django Channels with local Redis (0.14.0) and Daphne (0.14.3)
3) Django Channels with IPC (1.1.0) and Daphne (0.14.3)
Latency
~~~~~~~~~~~~
@ -22,7 +31,8 @@ All target and sources machines were identical ec2 instances m3.2xlarge running
In order to ensure that the same number of requests were sent, the rps flag was set to 300.
.. image:: channels-latency.PNG
.. image:: channels-latency.png
Throughput
~~~~~~~~~~~~
@ -34,7 +44,8 @@ For the following tests, loadtest was permitted to autothrottle so as to limit e
Gunicorn had a latency of 6 ms; daphne and Redis, 12 ms; daphne and IPC, 35 ms.
.. image:: channels-throughput.PNG
.. image:: channels-throughput.png
Supervisor Configs
@ -42,6 +53,8 @@ Supervisor Configs
**Gunicorn (19.6.0)**
This is the non-channels config. It's a standard Django environment on one machine, using gunicorn to handle requests.
.. code-block:: bash
[program:gunicorn]
@ -56,6 +69,10 @@ Supervisor Configs
**Redis (0.14.0) and Daphne (0.14.3)**
This is the channels config using redis as the backend. It's on one machine, so a local redis confog.
Also, it's a single worker, not multiple, as that's the default config.
.. code-block:: bash
[program:daphne]
@ -76,6 +93,9 @@ Supervisor Configs
**IPC (1.1.0) and Daphne (0.14.3)**
This is the channels config using IPC (Inter Process Communication). It's only possible to have this work on one machine.
.. code-block:: bash
[program:daphne]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB