Skip to content

aioscgi is a container implementing the Asynchronous Server Gateway Interface to serve up asynchronous Web applications via the Simple Common Gateway Interface protocol.

License

Notifications You must be signed in to change notification settings

Hawk777/aioscgi

Repository files navigation

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.

About

aioscgi is a container implementing the Asynchronous Server Gateway Interface to serve up asynchronous Web applications via the Simple Common Gateway Interface protocol.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages