From 9ad5e76d83c9e7e129f2f88d55513a13ffe3816a Mon Sep 17 00:00:00 2001 From: sonic182 Date: Sun, 27 Oct 2019 08:39:06 +0100 Subject: [PATCH] Faster performance test if None timeouts --- aiosonic/timeout.py | 8 ++++++-- tests/performance.py | 9 ++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/aiosonic/timeout.py b/aiosonic/timeout.py index 5d3ed4a..dabab63 100644 --- a/aiosonic/timeout.py +++ b/aiosonic/timeout.py @@ -1,10 +1,14 @@ +from typing import Optional + class Timeouts(): """Timeouts class wrapper.""" - def __init__(self, sock_connect: float = 5, sock_read: float = 30, - pool_acquire: float = None, request_timeout: float = 60): + def __init__(self, sock_connect: Optional[float] = 5, + sock_read: Optional[float] = 30, + pool_acquire: Optional[float] = None, + request_timeout: Optional[float] = 60): """Timeouts. Arguments: diff --git a/tests/performance.py b/tests/performance.py index 6c39581..fac41ce 100644 --- a/tests/performance.py +++ b/tests/performance.py @@ -79,11 +79,11 @@ async def performance_aiohttp(url, concurrency): return await timeit_coro(session.get, (url)) -async def performance_aiosonic(url, concurrency, pool_cls=None): +async def performance_aiosonic(url, concurrency, pool_cls=None, timeouts=None): """Test aiohttp performance.""" return await timeit_coro( aiosonic.get, url, connector=TCPConnector( - pool_size=concurrency, pool_cls=pool_cls)) + pool_size=concurrency, pool_cls=pool_cls), timeouts=timeouts) async def performance_httpx(url, concurrency, pool_cls=None): @@ -127,7 +127,10 @@ def do_tests(url): res1 = loop.run_until_complete(performance_aiohttp(url, concurrency)) # aiosonic - res2 = loop.run_until_complete(performance_aiosonic(url, concurrency)) + # faster if not timeouts (asyncio.wait_for makes loop slower) + timeouts = aiosonic.timeout.Timeouts(None, None, None, None) + res2 = loop.run_until_complete(performance_aiosonic( + url, concurrency, timeouts=timeouts)) # requests res3 = timeit_requests(url, concurrency)