An ASGI server that speaks SCGI.
Project description
What is aioscgi?
aioscgi is a container implementing the Asynchronous Server Gateway Interface (ASGI) to serve up asynchronous Web applications via the Simple Common Gateway Interface protocol.
What is SCGI?
SCGI is a protocol used for communication between HTTP servers and Web applications. Compared to CGI, SCGI is more efficient because it does not fork and execute a separate instance of the application for every request; instead, the application is launched ahead of time and receives multiple requests (either sequentially or concurrently) via socket connections. Compared to FastCGI, SCGI is a much simpler protocol as it uses a separate socket connection for each request, rather than including framing within a single connection to multiplex requests (a feature which is rarely used in FastCGI anyway due to the lack of per-request flow control).
See the Wikipedia and Python SCGI pages for more information.
How do I install it?
aioscgi’s releases are published on PyPI for installation through pip. You can run pip install aioscgi.
For development, the source is available at GitLab and GitHub.
How do I use it?
aioscgi installs an aioscgi executable. If your ASGI application callable is named myapp and is in a file called mypackage/mymodule.py, you might run aioscgi --unix-socket /path/to/socket mypackage.mymodule:myapp. For full details on available options, run aioscgi --help.
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.