Samuel Colvin 5b4817bb79 pthon/aiohttp correct which randomNumber is returned by 'update' (#2555) 8 years ago
..
app 5b4817bb79 pthon/aiohttp correct which randomNumber is returned by 'update' (#2555) 8 years ago
README.md 95a16408f3 Python aiohttp (#2529) 8 years ago
benchmark_config.json 5b4817bb79 pthon/aiohttp correct which randomNumber is returned by 'update' (#2555) 8 years ago
gunicorn_conf.py 95a16408f3 Python aiohttp (#2529) 8 years ago
requirements.txt 95a16408f3 Python aiohttp (#2529) 8 years ago
setup.sh 95a16408f3 Python aiohttp (#2529) 8 years ago
setup_raw.sh 5b4817bb79 pthon/aiohttp correct which randomNumber is returned by 'update' (#2555) 8 years ago

README.md

aiohttp Benchmark Test

The information below is specific to aiohttp. For further guidance, review the documentation. Also note that there is additional information that's provided in the Python README.

This is the Python aiohttp portion of a benchmarking tests suite comparing a variety of frameworks.

All test implementations are located within (./app).

Description

aiohttp with aiopg + sqlalchemy and separately asyncpg for database access.

uvloop is used for a more performant event loop.

Database

PostgreSQL

Server

gunicorn+uvloop on CPython

Test URLs

Test 1: JSON Encoding

http://localhost:8080/json

Test 2: Single Row Query

With ORM:

http://localhost:8080/db

Without ORM (raw):

http://localhost:8080/raw/db

Test 3: Multi Row Query

With ORM:

http://localhost:8080/queries?queries=20

Without ORM (raw):

http://localhost:8080/raw/queries?queries=20

Test 4: Fortunes (Template rendering)

With ORM:

http://localhost:8080/fortunes

Without ORM (raw):

http://localhost:8080/raw/fortunes

Test 5: Update Query

With ORM:

http://localhost:8080/updates?queries=20

Without ORM (raw):

http://localhost:8080/raw/updates?queries=20

Test6: Plaintext

http://localhost:8080/plaintext