Skip to content

Commit

Permalink
Merge pull request #1245 from jefer94/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
jefer94 authored Jan 18, 2024
2 parents 971015a + ecd6faf commit f3d7f8a
Show file tree
Hide file tree
Showing 19 changed files with 3,979 additions and 886 deletions.
4 changes: 3 additions & 1 deletion Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,6 @@ sqlalchemy-bigquery = { extras = ["bqstorage"]}
drf-yasg = "*"
google-cloud-firestore = "*"
gevent = "*"
django-storages = {extras = ["google"] }
newrelic = "*"
graphene-django = "*"
graphene-django-optimizer = "*"
Expand All @@ -128,3 +127,6 @@ psycopg = {extras = ["pool", "binary"], version = "*"}
cryptography = "~=41.0.7"
adrf = "*"
uvicorn = "*"
django-storages = {extras = ["google"], version = "*"}
aiohttp = {extras = ["speedups"], version = "*"}
aiodns = "*"
374 changes: 221 additions & 153 deletions Pipfile.lock

Large diffs are not rendered by default.

95 changes: 82 additions & 13 deletions benchmarks/django-workers/bench.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

FILE="./general.md"
CONNECTIONS=2000
HTTP_CLIENT_CONNECTIONS=700 # how many connections as your computer can handle without breaking the tests
THREADS=20
PORT=8000
HOST="http://localhost:$PORT"
Expand Down Expand Up @@ -51,7 +52,7 @@ function sync_bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/gateway_3s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d15s "$HOST/myapp/sync/gateway_3s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -61,7 +62,7 @@ function sync_bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/gateway_10s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d22s "$HOST/myapp/sync/gateway_10s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -75,11 +76,30 @@ function sync_bench {
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

sleep $SLEEP_TIME

echo "" >> "$FILE"
echo "### Fake redis hit" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/cache_hit" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

echo "### Fake cache set" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/cache_set" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

echo "### Requests" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/requests" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/sync/requests" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -89,7 +109,7 @@ function sync_bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/httpx" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/sync/httpx" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
}
Expand Down Expand Up @@ -161,13 +181,13 @@ function bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/gateway_3s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d15s "$HOST/myapp/sync/gateway_3s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/gateway_3s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d15s "$HOST/myapp/async/gateway_3s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -177,13 +197,13 @@ function bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/gateway_10s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d22s "$HOST/myapp/sync/gateway_10s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/gateway_10s" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d22s "$HOST/myapp/async/gateway_10s" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -203,17 +223,48 @@ function bench {
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

sleep $SLEEP_TIME

echo "" >> "$FILE"
echo "### Fake redis hit" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/cache_hit" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/cache_hit" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

echo "### Fake cache set" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/cache_set" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/cache_set" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

echo "### Requests" >> "$FILE"
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/requests" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/sync/requests" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/requests" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/async/requests" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -223,13 +274,13 @@ function bench {
echo "#### Sync" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/sync/httpx" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/sync/httpx" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/httpx" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/async/httpx" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"

Expand All @@ -239,7 +290,7 @@ function bench {
echo "#### Async" >> "$FILE"
echo "" >> "$FILE"
echo "\`\`\`bash" >> "$FILE"
wrk -t "$THREADS" -c "$CONNECTIONS" -d10s "$HOST/myapp/async/aiohttp" >> "$FILE"
wrk -t "$THREADS" -c "$HTTP_CLIENT_CONNECTIONS" -d10s "$HOST/myapp/async/aiohttp" >> "$FILE"
echo "\`\`\`" >> "$FILE"
echo "" >> "$FILE"
}
Expand Down Expand Up @@ -273,3 +324,21 @@ echo "## ASGI Hypercorn Uvloop" >> $FILE
bench

sudo fuser -k $PORT/tcp
granian --interface asgi mysite.asgi:application --port $PORT --workers $THREADS --loop asyncio & echo "starting server..."
sleep $SLEEP_TIME
echo "## Granian Asyncio" >> $FILE
bench

sudo fuser -k $PORT/tcp
granian --interface asgi mysite.asgi:application --port $PORT --workers $THREADS --loop uvloop & echo "starting server..."
sleep $SLEEP_TIME
echo "## Granian uvloop" >> $FILE
bench

sudo fuser -k $PORT/tcp
daphne mysite.asgi:application -p $PORT -t $TIMEOUT & echo "starting server..."
sleep $SLEEP_TIME
echo "## Daphne" >> $FILE
bench

sudo fuser -k $PORT/tcp
Loading

0 comments on commit f3d7f8a

Please sign in to comment.