Uvicorn ASGI Server

Uvicorn ASGI Server

github.com

1

About this website

Uvicorn is a lightning-fast ASGI (Asynchronous Server Gateway Interface) server implementation for Python, built on top of uvloop (an ultra-fast implementation of the asyncio event loop using Cython and libuv) and httptools (a Python wrapper for the Node.js HTTP parser). Created by Tom Christie, the author of Django REST Framework and Starlette, Uvicorn serves as the default ASGI server for popular Python web frameworks including FastAPI, Starlette, and Responder. The latest version 0.37.0 supports Python 3.9 through 3.14 and provides both asynchronous (uvicorn command) and multiprocessing (uvicorn with workers flag) deployment modes. Uvicorn implements the ASGI 3.0 specification, supporting HTTP versions 1.1 and 2 with H2 protocol support, WebSocket connections with per-message-deflate extension, and complete TLS and SSL/TLS termination including modern cipher suites. The server supports graceful shutdown through SIGTERM handling, hot reload during development through the uvicorn.supervisors module, and the --reload flag that watches for file changes using watchfiles. For production deployment, Uvicorn recommends running behind Gunicorn with the uvicorn.workers.UvicornWorker class, which combines Gunicorn process management with Uvicorn ASGI handling. The server includes built-in access logging, error handling with optional custom exception handlers, and integration with the Python logging module.

Tags & Categories

Categories

Tags

Statistics

1
Views
0
Clicks
0
Like
0
Dislike

Comments

Log In to post a comment

No comments yet. Be the first!