Multiprocessing based aiohttp application runner
Project description
aiohttp-serve
aiohttp-serve
package allows you to run aiohttp.web.Application
on multiple workers/processes
(if for some reason you don't want to use external servers such as gunicorn etc.)
Requirements
- Python >= 3.7
- aiohttp >= 3.7.4
- PyYAML>=5.4.1 (optional)
Installation
pip install aiohttp-serve
Usage
web.py
from aiohttp import web
async def index(request):
return web.Response(body='Hello world')
app = web.Application()
app.router.add_get('/', index)
simple usage:
from aiohttp_serve import serve
if __name__ == '__main__':
serve(
'web:app',
host='127.0.0.1',
port=8080,
workers=4,
)
bind to multiple host/port/path:
from aiohttp_serve import serve
if __name__ == '__main__':
serve(
'web:app',
bind=[
'http://127.0.0.1:80',
'https://127.0.0.1:443',
'unix:/path/to/unix/socket.sock',
],
workers=4,
ssl_certfile='/path/to/cert.crt',
ssl_keyfile='/path/to/key.key',
)
logging:
Just configure logging at module level
import yaml
import logging.config
from aiohttp_serve import serve
with open('./examples/logging.yaml', mode='r') as f:
logging.config.dictConfig(yaml.safe_load(f))
if __name__ == '__main__':
serve(
'web:app',
host='127.0.0.1',
port=8080,
workers=4,
)
of use log_config
arg (dict, .json or .yaml or .conf file)
from aiohttp_serve import serve
if __name__ == '__main__':
serve(
'web:app',
host='127.0.0.1',
port=8080,
workers=4,
log_config='./examples/logging.yaml',
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiohttp_serve-0.2.2.tar.gz
(10.9 kB
view details)
Built Distribution
File details
Details for the file aiohttp_serve-0.2.2.tar.gz
.
File metadata
- Download URL: aiohttp_serve-0.2.2.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/58.0.4 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ebd1947d18b9dec3ad4955dee9d7698b9dbba2fae32a4d01fe9d6243e2dc8bc |
|
MD5 | 3241614cb2afae83468f7933064df350 |
|
BLAKE2b-256 | b3a36737b396982dd38b13110c7b61977c4580279a5d37093226a3018f1c9a50 |
File details
Details for the file aiohttp_serve-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: aiohttp_serve-0.2.2-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/58.0.4 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 42b11b301cd3f753f4940277ce8df5fcd515507c6f33490c42a947e0dc3e38d5 |
|
MD5 | cc52b347d3c49e366d87d1ee33b7e7ed |
|
BLAKE2b-256 | a214afe43ef40d61aa3e969ff375b19ccf6d1cd3ab0766f32c46b7c1f5079a50 |