Async http client
Project description
aiosonic
Fastest Python async http client
Here is some documentation.
There is a performance script in tests folder which shows very nice numbers
» python tests/performance.py
doing tests...
{
"aiohttp": "1000 requests in 247.47 ms",
"requests": "1000 requests in 3625.10 ms",
"aiosonic": "1000 requests in 80.09 ms",
"aiosonic cyclic": "1000 requests in 128.71 ms",
"httpx": "1000 requests in 528.73 ms"
}
aiosonic is 209.00% faster than aiohttp
aiosonic is 4426.34% faster than requests
aiosonic is 60.70% faster than aiosonic cyclic
aiosonic is 560.17% faster than httpx
Requirements:
- Python>=3.6
Features:
- Keepalive and smart pool of connections
- Multipart File Uploads
- Chunked responses handling
- Chunked requests
- Connection Timeouts
- Automatic Decompression
- Follow Redirects
- Fully type annotated.
- 100% test coverage.
TODO
- Better documentation
- International Domains and URLs (idna + cache)
- Requests using a http proxy
- Sessions with Cookie Persistence
- Basic/Digest Authentication
- Elegant Key/Value Cookies
Development
Install packages with pip-tools:
pip install pip-tools
pip-compile
pip-compile test-requirements.in
pip-sync requirements.txt test-requirements.txt
Contribute
- Fork
- create a branch
feature/your_feature
- commit - push - pull request
Thanks :)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiosonic-0.2.0.tar.gz
(10.6 kB
view hashes)
Built Distribution
aiosonic-0.2.0-py3-none-any.whl
(11.6 kB
view hashes)