Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?

Still not running under ideal test conditions, but here is a more fair comparison (using meinheld for WSGI):

uvicorn asgiproj.asgi:application -w2

[erm@fezzan django-async]$ wrk -d20s -t10 -c200 http://127.0.0.1:8000/asgi/
Running 20s test @ http://127.0.0.1:8000/asgi/
  10 threads and 200 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    15.10ms    9.77ms 194.12ms   89.38%
    Req/Sec     1.34k   266.24     2.17k    72.06%
  266101 requests in 20.09s, 37.05MB read
  Socket errors: connect 0, read 177, write 0, timeout 0
Requests/sec:  13246.45
Transfer/sec:      1.84MB

gunicorn --worker-class="egg:meinheld#gunicorn_worker" asgiproj.wsgi:application -w2

[erm@fezzan django-async]$ wrk -d20s -t10 -c200 http://127.0.0.1:8000/asgi/
  wrk -d20s -t10 -c200 http://127.0.0.1:8000/wsgi/
  Running 20s test @ http://127.0.0.1:8000/wsgi/
    10 threads and 200 connections
    Thread Stats   Avg      Stdev     Max   +/- Stdev
      Latency    20.61ms   13.09ms 276.38ms   99.11%
      Req/Sec     1.00k   152.68     1.50k    72.37%
    196886 requests in 20.04s, 36.61MB read
    Socket errors: connect 0, read 169, write 0, timeout 0
  Requests/sec:   9822.61
  Transfer/sec:      1.83MB
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.